공부중

C#/Problems 2019. 3. 27. 22:13

Starcraft

1. 종족 선택(Class)
2. 건물 및 일꾼 4기 생성 (Class Field)
3. 명령어 유닛선택 시 유닛의 목록 출력 (Class Field output)
4. 이동, 공격, 멈춤 기능 (Method)
5. 기본적으로 일을 하는 중이어서 시간단위로 자원 증가
6. 프로토스는 Shield HP따로, Shield는 시간단위 회복
7. 테란은 Land 기능, if Land state시 일꾼 일 정지
8. 저그는 라바 3기 드론 4기
9. 라바는 드론으로 변경가능하게



Class 종족
ㄴ field 유닛, 건물


유닛, 건물 인스턴스 생성시
그의 주소를 인스턴스 변수 배열에 하나씩 집어넣는다.
배열이 NULL일 경우 그 칸에 인스턴스의 주소를 넣는다.
출력시 배열을 반복하여 출력하면 된다.
배열에서 파괴되면 Index를 주어서 파괴하면 된다.



IEnumerator
object Current { get; }
bool MoveNext();
void Reset();


그룹을 만들고 싶거나 오브젝트를 만들 때, 두 개의 방법이 있음
오브젝트의 Array를 만들거나 오브젝트의 Collection을 만들거나
배열은 만들고 사용하는데 유용하고 개체수가 정해진 오브젝트를 관리하는데 유용

컬렉션은 개체를 관리하는데 있어 유연한 방법을 제공한다
Array와는 다르게 컬렉션은 동적으로 확장 및 축소가 가능(List 같은)


Generic List vs ArrayList


Get&Set
Predicate ? (델리게이트 등장!)

delegate = 대리자로서 모든 메서드에 연결할 수 있다.
즉, A메서드의 매개변수로 메서드를 전달 할 수 있다.

아직 설명은 못하겠는데 delegate랑 ienumerable, ienumerator는 사기다

: