Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 테이블
- JS
- 코딩
- 친구함수
- 생성자호출
- 자바스크립트
- freiend클래스
- 웹개발
- this객체
- react
- SQL
- freiend선언
- friend함수
- time()
- HTML
- 랜덤출력
- 프로그래밍
- jQuery
- C++
- new연산자
- 자바스크립트라이브러리
- 함수중복
- C언어
- call by referance
- 멤버접근허용
- 연산자재정의
- 제네릭 함수
- 함수표현식
- 객체지향프로그래밍
- 데이터베이스
Archives
- Today
- Total
Programming Storytelling
복사 생성자(copy constructor) 본문
복사에는 얕은 복사와 깊은 복사가 있는데 그 두가지의 특징에 대해 살펴보도록 하겠다.
얕은복사
- 값만 복사하는 복사 형태
- 포인터 등을 복사 시 같은 주소를 참조하기 때문에, 값 변경, 동적 해제 등에서 문제가 발생한다.
깊은 복사
- 주소가 가리키는 값, 즉, 그 메모리의 값을 복사하는 복사 형태.
- 포인터 등을 복사 시 한 주소를 참조하지 않고, 새로 주소를 할당받은 후 참조하기 때문에, 문제가 발생하지 않는다.
복사 생성자란?
기본 복사 생성자
1.기본적으로 제공되는 생성자 중 하나
2.객체간의 변수의 값을 복사 해 준다.
3.호출시키는 객체의 선언과 동시에 초기화 할 때 발생한다.
복사 생성자의 호출 시점
1.객체의 선언과 동시에 초기화 될 때
2.함수에 매개변수로 객체를 전달할 때(call by value 에서 일어난다.)
3.반환값으로 객체를 반활 할 때
'C++' 카테고리의 다른 글
freind 클래스와 함수에 대하여 (0) | 2019.06.12 |
---|---|
정적 변수, static 키워드란? (0) | 2019.06.12 |
랜덤함수 rand(),srand() 에 대하여 (0) | 2019.06.08 |
C언어 기원 C++프로그래밍,무엇이 추가 되었을까? (0) | 2019.06.08 |
함수의 오버로딩과 인라인함수 및 매크로 함수 (0) | 2019.04.16 |