복사 생성자
- 다른 객체(같은 클래스)를 이용해서 새로운 객체를 초기화
- 암시적(implicit) 복사 생성자
- 코드에 복사생성자가 없는 경우, 컴파일러가 암시적 복사생성자를 자동생성
- 암시적 복사 생성자는 얕은 복사를 수행
- 얕은 복사?? 각멤버값을 복사해서 넣음.
- 얕은 복사의 문제점 -> 안에 포인터형 변수가 동적메모리를 가리킨다면 주소만 바뀌어 별도의 메모리공간이 아닌 같은 메모리 공간을 가리키게 되는 문제점 발생
- 따라서 직접 복사생성자를 만들어 깊은 복사를 수행하여야함.
'언어 공부 > C++' 카테고리의 다른 글
6. 오버로딩(Overloading) (0) | 2023.01.14 |
---|---|
4. String class 와 참조 (0) | 2023.01.14 |
3. 객체배열과 동적메모리 (0) | 2023.01.14 |
2. 클래스와 생성자, 소멸자 (0) | 2023.01.14 |
1. C언어 와 C++의 다른 점 (0) | 2023.01.14 |