foreach 2

[C#] foreach 가능한 객체 만들기

[C#] foreach 가능한 객체 만들기인덱서와 IEnumerable, IEnumerator 인터페이스를 활용하여 foreach가 가능한 객체를 만들수 있다.IEnumerableIEnumerator GetEnumerator() : IEnumerator 형식의 객체를 반환IEnumeratorboolean MoveNext() : 다음 요소로 이동한다. 컬렉션의 끝을 지나면 false, 이동 성공하면 true 반환void Reset() : 컬렉션의 첫 번째 위치의 앞으로 이동.Object Current {get;} : 컬렉션의 현재 위치를 반환Item 클래스class Item { public string Name{get;set;} public int Count{get;set;} ​ public overrid..

아카이빙/C# 2018.06.20

[C#] 유니티에서 foreach 성능은 개선되었을까

예전에 잠깐 이슈가 되었던 유니티에서 foreach 성능문제를 다뤄보려고한다. 나도 그냥 foreach는 안좋구나 정도로만 알고 있었는데 이번 NDC 2017에서 오지현 에반젤리스트님의 강연에서 잠깐 지나가는 말로 유니티 5.2~3버전 쯤에서 foreach 성능이 개선되었다는 얘기를 들었다. 나는 foreach문이 코드가 훨씬 간결해서 선호하는 편인데, 성능 개선이 되었다니..! 이제 맘놓고 써도 되는걸까하는 기대를 가지고 한번 테스트를 해보기로 마음먹었다. 테스트는 GeekCoders님의 블로그 글을 참고하여 진행했다.​[Unity] 유니티 프로그래머가 알아야 할 최적화 스크립트 코드 작성법GeekCoder님은 유니티 4.6.1 기준으로 테스트했고, 그 결과 For문이 2.2배이상 빠른 것으로 나타났고..

아카이빙/C# 2017.05.06