📚책읽기

[C++] 디폴트 생성자, NULL, 포인터와 객체, 위치 지정 new

공대 컴린이 2023. 2. 6. 12:02
728x90

디폴트 생성자

- 사용자가 어떠한 생성자도 제공하지 않으면, C++가 디폴트 생성자를 제공한다.

- Klunk::Klunk() {} // 암시적 디폴트 생성자

- 디폴트 생성자는 단지 객체를 만들면 항상 생성자가 호출되기 때문에 필요한 것이다.

NULL, 0, nullptr

- NULL은 여러 개의 헤더 파일에 0으로 정의되어 있는 기호 상수이다.

포인터와 객체 요약

  • 객체를 지시하는 포인터
    String* glamour;
  • 기존의 객체를 지시하는 포인터
    String* first = &sayings[0];
  • new를 사용한 새 객체 생성
    String* favorite = new String(sayings[choice]); // String(const String & ) 생성자 호출
    String* gleep = new String; // 디폴트 생성자 호출
    String* glop = new String("my my my"); // String(const char * ) 생성자 호출

위치 지정 new

- 위치 지정 new는 메모리를 대입하는 데 사용할 메모리 위치를 사용자가 직접 지정하는 것을 허용한다.

 

 

728x90