강의

멘토링

커뮤니티

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

BBAKK님의 프로필 이미지
BBAKK

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)

Data & Config

함수 시그니쳐부분에 대한 이해가 어렵습니다

작성

·

271

0

static Loader LoadJson<Loader, Key, Value>(string path) where Loader : ILoader<Key, Value>

{

     string text = File.ReadAllText($"{ConfigManager.Config.dataPath}/{path}.json");

     return Newtonsoft.Json.JsonConvert.DeserializeObject<Loader>(text);

}

DataManager.cs 파일에 있는 위 함수에서 Loder는 어디에 정의 되어있는 것이고LoadJson 뒤 부분인 <Loader, Key, Value> 는 왜 있는건가요?

답변 1

1

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

<T> 는 Generic이라는 문법입니다.
<> 안에 들어가 있는 애를 다른 타입으로 치환해서 사용하는 것입니다.
위 코드에서 where Loader : ILoader<Key, Value>라 했으니,
ILoader를 상속받은 클래스만 Loader로 넣을 수 있는 상황입니다.

C# Generic 관련해서 찾아보시면 도움이 될겁니다.

BBAKK님의 프로필 이미지
BBAKK

작성한 질문수

질문하기