const1 C++ 독학 7일차 - 디폴트 복사 생성자, 생성자 초기화 리스트, const, static, this 포인터 디폴트 복사 생성자 c++ 컴파일러는 디폴트 복사 생성자를 지원해주고 있다. 그냥 1대1 복사를 원하는 것이라면 굳이 복사생성자를 써주지 않고도 디폴트 복사 생성자를 이용해서 쉽게 처리할 수 있다. 하지만 디폴트 복사 생성자에 한계가 존재한다. 이 코드는 스타크래프트 코드를 그대로 참고한 것이다. 클래스 Photon_Cannon에 char *name 변수를 만들어줬다. 그리고 디폴트 복사 생성자를 이용해서 pc2에 그대로 복사했다. 그러면 이렇게 오류가 발생하게 된다. 디폴트 생성자가 사용될 때 컴파일러는 1대 1로 복사를 해주는 복사생성자를 만들었을 것이다. 이 복사 생성자를 호출하면 hp, shield, .... 모든 변수들이 같아진다. name 변수에서는 두 포인터가 같은 값을 갖는다는 것은 같은 .. 2021. 7. 28. 이전 1 다음