포스트를 만든 목적
Effective C# 을 읽고 공부하려고 만들었다.
내용
static 멤버 변수는 static 생성자를 사용 해서 초기화 하는게 좋다는 내용이다. 코드를 올릴테니, 컴파일 해보고, 어떻게 작동되나 눈으로 봐두는게 좋겠다.
C++ 에선 static 멤버 초기화 하는게 좀 까다로운 점이 있는데, C# 에서는 지원해 주기 때문에, 한결 편해졌다.
언제 static 생성자를 사용 하는게 좋은가?
- static 멤버가 있을 경우 - 코드는 생략한다.
- singleton 을 구현 할 경우
- static 멤버 초기화 시 예외가 발생할 가능 성이 있을 경우 - 코드는 생략
언제 static 생성자를 사용하지 않는게 좋은가?
- 간단한 static 멤버를 초기화 할 경우(위와 반대겠지?)
Digression
- 오늘 PD 수첩을 보았다. "PD수첩 E862 이 정부는 왜 나를 사찰했나" 인데, .. 경악할 수준이다. 검찰 이야기 I, II 나올 때도 경악 했는데, 이번에도 경악했다.
'책 정리 > Effective C#' 카테고리의 다른 글
item 18, 표준 Dispose 패턴을 구현하라. (2) | 2010.07.06 |
---|---|
item 17, boxing과 unboxing을 최소화하라 (0) | 2010.07.04 |
item 16, Garbage를 최소화 하라. (0) | 2010.07.03 |
item 15, 자원해제를 위해서 using과 try/finally를 이용해라 (0) | 2010.07.03 |
item 14, 연쇄적인 생성자 호출을 이용하라. (4) | 2010.07.02 |
item 12, 할당문보다는 변수 초기화를 사용하는 편이 더 좋다 (0) | 2010.06.30 |
item 11, foreach 루프가 더 좋다. (0) | 2010.06.29 |
item 10, GetHashCode()의 함정을 유의하라 (0) | 2010.06.27 |
item 9, ReferenceEquals(), static Equals(), instance Equals(), operator==의 상호 연관성을 이해해라. (0) | 2010.06.26 |
item 8, value 타입을 사용할 때 0이라는 값이 의미를 가질 수 있도록 하라 (0) | 2010.06.24 |
최근댓글