[Effective C#] 할당 구문보다 멤버 초기화 구문이 좋다

2024. 8. 8. 09:00·독서/Effective C#


01. 멤버 초기화 구문

// 멤버 초기화 구문
private List<string> example = new List<string>();

 

책에서 멤버 초기화 구문이라고 나오는 내용은 변수의 선언부에서 초기화를 하라는 것과 동일한 의미로 사용된다. 선언부에서 초기화를 하면 생기는 장점은 생성자보다 빠르게 초기화되기 때문에 이루어진다는 점이 있다.

 

01. A. 사용을 고려하지 않아도 되는 곳

  • 객체를 0 or Null로 초기화하는 경우
    • CLR은 객체 생성 시 객체의 값을 0이나 Null로 초기화를 하기 때문에 다시 초기화를 할 필요가 없다.
  • 동일한 객체를 반복해서 초기화하는 경우
    • 새로운 객체를 생성한 후에 다시 객체를 추가 생성하는 것은 기존 객체를 가비지로 만드는 것이다. 그렇기 때문에 초기화를 한 번만 하는 것이 바람직하다.
  • 예외 처리가 반드시 필요한 경우
    • try~catch문은 선언부에서 사용이 불가능하기 때문에 예외가 발생하면 사용할 수 없다. 이런 경우에는 생성자 내부로 코드를 옮겨서 사용하도록 하자.

'독서 > Effective C#' 카테고리의 다른 글

[Effective C#] 초기화 코드가 중복되는 것을 최소화하라  (0) 2024.08.13
[Effective C#] 정적 클래스 멤버를 올바르게 초기화하라  (0) 2024.08.09
[Effective C#] .NET 리소스 관리에 대한 이해  (0) 2024.08.07
[Effective C#] 베이스 클래스가 업그레이드된 경우에만 new 한정자를 사용하라  (0) 2024.08.06
[Effective C#] 박싱과 언박싱을 최소화하라  (0) 2024.08.05
'독서/Effective C#' 카테고리의 다른 글
  • [Effective C#] 초기화 코드가 중복되는 것을 최소화하라
  • [Effective C#] 정적 클래스 멤버를 올바르게 초기화하라
  • [Effective C#] .NET 리소스 관리에 대한 이해
  • [Effective C#] 베이스 클래스가 업그레이드된 경우에만 new 한정자를 사용하라
태역
태역
  • 태역
    RYULAB
    태역
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 언어
        • C
        • C++
        • C#
      • 엔진, 프레임워크
        • Unity
        • Unreal
        • Electron
      • 공부
        • 디자인 패턴
        • 수학
        • CS
        • Git
        • 알고리즘
        • 자료구조
      • 코테
        • 프로그래머스
        • 백준
      • 독서
        • Effective C#
        • CLR via C#
        • 뇌를 자극하는 윈도우즈 시스템 프로그래밍
        • 오브젝트
        • CSAPP
        • OSTEP
      • 프로젝트
        • Unity
      • 개발 일지
        • 퓨처리티
        • 골든타임
      • 활동
        • 게임잼 후기
        • 게임제작동아리 브릿지
        • 크래프톤 정글
        • 기타
      • 기타
  • 블로그 메뉴

    • 링크

    • 공지사항

      • 2024 04 17
    • 인기 글

    • 태그

      티스토리챌린지
      인프런 #인프런강의후기 #게임개발 #게임개발강의 #인강후기 #강의후기 #게임개발자 #인프런강의
      오블완
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    태역
    [Effective C#] 할당 구문보다 멤버 초기화 구문이 좋다
    상단으로

    티스토리툴바