강의

멘토링

커뮤니티

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

adsf2235님의 프로필 이미지
adsf2235

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진

foreach문을 이용해서 child에 접근하는 부분이 이해가 가지 않습니다.

작성

·

344

0

  public override void Init()

    {

        base.Init();

        Bind<GameObject>(typeof(GameObjects));

        GameObject gridPanel = Get<GameObject>((int)GameObjects.GridPanel);

        foreach (Transform child in gridPanel.transform)

        {

            Managers.Resource.Destroy(child.gameObject);

        }

    }

요런형태로  child들을 다 삭제할 수 있었는데, 이해가 안되는 부분은 어떻게 child에 접근할 수 있었는지가 이해가 안됩니다.

foreach를 통해 접근한 gridPanel.transform은 패널 자체의 transform을 접근한 것 아닌가요?? 왜 패널이 아닌 그아래의 child들이 foreach를 통해 삭제되는지 잘모르겠습니다..

답변 1

0

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

음 바로 답변 드릴 수도 있지만,
숙제를 내드리는 것이 날 것 같네요.

아무 클래스 (ex. Knight)를 대상으로 foreach가 동작하기  위해서
무엇 무엇을 추가해야 하는지 조사를 해보시기 바랍니다.
그렇다면 Transform도 foreach를 대상으로 
그 무엇무엇을 했기 때문에 그렇게 동작한다는 것을 알 수 있겠죠.

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

IEnumerable 과 IEnumerator 같은데 이해하기가 너무 어렵습니다 ..ㅠㅠ

adsf2235님의 프로필 이미지
adsf2235

작성한 질문수

질문하기