인프런 커뮤니티 질문&답변

heono님의 프로필 이미지
heono

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문

스택과 힙

knight.Clone() 함수 질문

작성

·

228

0

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

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

답변 1

0

heono님의 프로필 이미지
heono
질문자

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

heono님의 프로필 이미지
heono

작성한 질문수

질문하기