• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

knight.Clone() 함수 질문

22.01.05 19:03 작성 조회수 177

0

knight2 객체를 만들 때 knight.Clone()함수를 만들어 그 안에서 new를 통해 새로운 객체를 힙 메모리 공간에 할당받아서 knight2가 그 clone안에서 new를 통해 새로 할당된 공간의 메모리를 참조하는걸로 이해를 했습니다. 실제로 메모리를 까봤는데 같은 주소를 참조하는것도 확인했습니다.

이때 저는 clone()에서 new로 할당된 새로운 knight값이 함수가 끝나면 죽을줄 알았는데 안죽고 참조하더라구요.. 이런 경우엔 clone()안의 new knight의 생명주기가 원본 knight의 소멸자가 실행될 때 인지 프로그램이 끝날때인지 knight2가 소멸될때인지 궁금합니다.

답변 1

답변을 작성해보세요.

0

heono님의 프로필

heono

질문자

2022.01.05

강의를 방금 듣고 알았는데 그럼 C#의 동적 할당은 c++의 shared_ptr같이 관리 되는건가요??