![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bfoQkz/btsIo1Bgiw0/uGl8nGRy8vKoie8ovdlQj0/img.png)
1. static_cast2. dynamic_cast3. const_cast4. reinterpret_cast Static_cast일반적으로 많이 사용되는 캐스팅C스타일 ( (double) num; ) "()" 보다 안전한 타입변환 방법 Static_cast 종류기본 타입 간 변화int i = 10;double b = static_cast i;포인터 간의 변화 (** 주로 많이 사용)class Base{};class Child : public Base{};Base* basePtr = new Child;Child* childPtr = static_cast(basePtr);void 포인터 특정 포인터로 변환void *ptr = &i;int* intPtr = static_cast(ptr);열거형과 정수형 간의..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/u5mMN/btsInNdaqaz/NYsBtVYn2tFEka9DkTU1kK/img.png)
1. 얕은 복사2. 깊은 복사3. 상속에 따른 복사 테스트 얕은 복사컴파일러가 자동으로 해준다데이터의 값 복사와 포인터가 있을경우 해당 주소 그대로 복사주소 복사가 이루어질 때 문제가 될 여지가 존재class Pet{};class Player{public: int _hp; Pet* _pet;};Pet* pet = new Pet; Player p1;p1._pet = pet; Player p3 = p1; // 복사 생성자p1._pet->_hp = 200; // p3의 _pet도 동일하게 변경됨 (주소 복사가 이루어짐 = 얕은 복사) 깊은 복사"명시적"으로 지정해서 의도적으로 깊은복사가 이루어지도록 진행컴파일러의 의존도 낮춤복사 생성자 생성자와 유사하지만 자기 자신을 인자로 받..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/Jj3Ht/btsIn3MwwWu/mh1kSyFVTWwEycXD5Y6Gy0/img.png)
1. 포인터 생성자/소멸자2. 타입변환을 위한 클래스 생성3. 연관성이 없는 클래스 사이의 포인터 변환4. 상속관계 클래스 사이의 포인터 변환포인터 생성자/ 소멸자포인터를 이용하여 동적할당을 할 때, 생성자와 소멸자가 호출될 수 있다.단순한, 포인터 선언은 생성자와 소멸자를 호출하지 않는다. class Player{};class Knight : public Player{};int main(){ Knight* knight; // 생성자, 소멸자 호출 x Player* player; // 생성자, 소멸자 호출 x knight = new Knight(); // 생성자, 소멸자 호출 o player = new Player(); // 생성자, 소멸자 호출 o Player*..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/3Sfum/btsIlfajyrs/bABQNat9pdExs0DvCcqdw0/img.png)
1. 일반적인 값& 참조타입 변환2. 업캐스팅 & 다운캐스팅 3. 암시적 변환 & 명시적 변환 4. 아무 관계없는 클래스 사이의 변환5. 상속관계의 클래스 타입 변환 일반적인 값& 참조타입 변환값 타입 변환원본 객체와 다른 비트열 재구성int a = 1234567;float b = (float)a; // 비트열 재구성 -> 값의 오류가 생길 수 있음 참조 타입 변환비트열 재구성 x , 관점만 변환int a = 1234567;float b = (float&)a; // a의 주소값을 float으로 이해하겠다라는 의미 (값의 변형이 존재)// float b = *(float*)&a; // 동일한 표현 업캐스팅 & 다운캐스팅업캐스팅작은 것 -> 큰 것으로 변경더 많은 범위를 표현할 수 있는 타입으로..
- Total
- Today
- Yesterday
- 백준
- 예외처리
- 클래스
- 포트폴리오
- JSON
- 검증
- 기술면접
- 깊이우선탐색
- Thymeleaf
- stack
- DFS
- 이진탐색
- 티스토리챌린지
- bean
- BFS
- 게시판 프로젝트
- HTML5
- Java
- JDBC
- 정렬
- 오블완
- 우선순위 큐
- db
- 알고리즘
- SQL
- 코딩테스트
- Spring
- 버블정렬
- 게시판
- 타입변환
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |