[c++] 생성자 이상을 가진 객체형의 new 표현식

// 객체 생성 Widget *pw = new Widget; // 기본 생성자 사용 // … delete pw; // 메모리 누수 방지


`new` 표현식을 사용하여 클래스 `Widget`의 객체를 동적으로 생성할 때, 생성자가 올바르게 호출되지 않는 문제가 발생할 수 있습니다. `new` 표현식이 객체를 생성할 때, 메모리를 할당하고 객체를 초기화하는 세 단계로 진행됩니다. 이 세 단계는 반드시 같은 스레드에서 실행되어야 합니다. 이러한 이슈가 발생하는 가장 일반적인 이유는 `new` 표현식을 thread-safety하지 않은 초기화 루틴에서 호출하기 때문입니다. 따라서, 생성자 이상을 가진 객체가 있는 경우, `new` 표현식을 사용하여 동적으로 객체를 생성할 때, 이러한 문제에 주의해야 합니다.

참고 자료:
- http://www.gotw.ca/gotw/066.htm
- https://en.cppreference.com/w/cpp/language/new