인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

문희찬님의 프로필 이미지
문희찬

작성한 질문수

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문

오른값 참조 (rvalue reference)

argument의 객체는 생성자호출를 하지 않나요?

작성

·

189

0

void Knight_Copy(Knight k) {}
int main(){
    Knight knight;
    Knight_Copy(knight);
}

위와 같은 코드가 있습니다.

Knight_Copy에서 만들어진 k는 생성자를 호출하지 않고 소멸자만 호출하나요? 

제 컴파일러는 stack에 만들어진 k의 생성자를 호출하지 않았습니다. 

답변 2

1

Rookiss님의 프로필 이미지
Rookiss
지식공유자

Knight knight;

stack에 만들어진 애도 동일하게, 기본 생성자를 호출하게 됩니다.
기본 생성자에 breakpoint나 로그를 찍어보시기 바랍니다.

0

문희찬님의 프로필 이미지
문희찬
질문자

감사합니다

문희찬님의 프로필 이미지
문희찬

작성한 질문수

질문하기