Game Develop

[C++] 대입연산자 본문

C++/C++

[C++] 대입연산자

MaxLevel 2021. 5. 1. 12:39

대입연산자는 이미 생성된 인스턴스에 다른 인스턴스를 대입할 때 수행된다.

디폴트로 얇은복사가 수행된다.

복사생성자와 헷갈리지 말아야 할 점으로, 복사생성자는 선언과 동시에 초기화할 때 수행되고

대입연산자는 '이미' 생성된 인스턴스에 다른 인스턴스를 대입할 때 수행된다는 것이다.

 그렇기 때문에 복사생성자는 깊은복사가 되게끔 정의해놔도 대입연산시에는 얕은복사가 수행된다는 것이다.(아예 다른 작업이기 때문)

 

그렇기 때문에 대입연산자로 값복사를 하려할 경우 깊은복사생성자를 따로 정의해준것처럼 대입연산자도 따로 연산자 오버로딩을 해줌으로써 깊은복사를 하게 해줘야한다.

 

'C++ > C++' 카테고리의 다른 글

[C++] const 관련 정리.  (0) 2022.01.05
[C++] 이동생성자.  (0) 2021.07.12
[C++] 복사생성자 , 얇은복사 깊은복사  (0) 2021.05.01
[C++] C++ 코딩 스탠다드 참고하는 사이트.  (0) 2021.04.08
[C++] 싱글톤 사용시 주의점  (0) 2021.04.01