수업 중 이슈 확인
깊은 복사에서 다음 코드 내용과 같이 Player player2 = Player(player1);으로 임시 객체를 만들어 생성 시,
Player player1 = Player("Alien", 0, 0);
Player player2 = Player(player1);
다음과 같은 에러가 생긴다.
1) player2에 player1 임시 객체 할당 전
2) 할당 후, player1.Print();
3) player1.Print();가 끝난 후, 임시 객체를 최적화하여 name 증발
4) 최종 출력 화면
다음과 같이 임시 객체를 생성하지 않고 초기화하면 문제가 생기지 않는다!
//Player player2 = Player(player1);로 임시 객체를 만들어 초기화하면 최적화당해
//name이 날아가는 결과 발생!!
Player player1("Alien", 0, 0);
Player player2(player1);
'C++ > 수업 내용' 카테고리의 다른 글
[ C++ 6, 7, 8, 9일차 ] 자료구조 시작, T 템플릿, 콘솔 엔진 제작 시작 (0) | 2025.01.08 |
---|---|
[ C++ 4일차 ] static, 형변환, RTTI, 파일입출력, 비트 배열 (0) | 2024.12.30 |
[ C++ 3일차 ] 상속, 객체와 포인터의 관계, virtual 함수, 연산자 오버로딩 (1) | 2024.12.27 |
[ C++ 2일차 ] class, 동적 메모리, C++의 고유 문법, 지평좌표계.. (1) | 2024.12.26 |