강의

멘토링

커뮤니티

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

멍텅구리님의 프로필 이미지
멍텅구리

작성한 질문수

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

Generic (일반화)

제네릭에대해서 질문이있습니다.

작성

·

348

1

다른건 다 이해를했는데 

class MyList<T> where T : new() 

에서 이해가안갑니다.

반드시 어떠한 인자를 받지않는 기본생성자가 있어야된다는 조건을 넣을수있다는게 이해가안갑니다.. 

제가지금 테스트할떄는 생성자가없어도 잘되는데 ..

뭐가문제인지 잘이해가안갑니다.

답변 1

8

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

제가지금 테스트할떄는 생성자가없어도 잘되는데 ..

<< 이 부분이 함정입니다.
생성자가 없어도 잘 되는 것 같지만 사실 생성자가 있는 것입니다!
어떤 class를 만들고 별도로 생성자를 따로 만들지 않으면,
기본 생성자가 내부적으로 알아서 만들어집니다.
반면 기본 생성자가 아닌 (ex. int를 하나를 받는) 다른 생성자를 만들면,
기본 생성자가 자동으로 만들어지지 않습니다.



위와 같은 테스트를 해보시기 바랍니다.

이렇게 바꾸면 다시 컴파일이 됩니다.


멍텅구리님의 프로필 이미지
멍텅구리
질문자

아하 이해했습니다 ㅎㅎ ! 감사합니다 !

멍텅구리님의 프로필 이미지
멍텅구리

작성한 질문수

질문하기