Share via


/Zc:zeroSizeArrayNew(배열에서 멤버 새로 만들기/삭제 호출)

/Zc:zeroSizeArrayNew 컴파일러 옵션은 개체의 길이가 0인 배열에 대해 멤버 newdelete을(를) 호출합니다.

구문

/Zc:zeroSizeArrayNew[-]

설명

/Zc:zeroSizeArrayNew 컴파일러 옵션을 사용하면 가상 소멸자가 있는 클래스 형식 개체의 길이가 0인 배열에 대해 멤버 newdelete을(를) 호출할 수 있습니다. 이 동작은 표준을 준수합니다. 이 컴파일러 옵션은 Visual Studio 2019 버전 16.9의 새로운 기능이며 기본적으로 모든 컴파일러 모드에서 사용하도록 설정됩니다. 이전에는 Visual Studio 2019 버전 16.9 이전 버전으로 컴파일된 코드에서 컴파일러가 가상 소멸자를 사용하여 클래스 유형의 객체의 전역 newdelete 길이가 0인 배열을 호출했습니다.

/Zc:zeroSizeArrayNew 옵션은 이전의 비준수 동작에 의존했던 코드의 호환성이 손상되는 변경을 일으킬 수 있습니다. 이전 동작을 복원하려면 /Zc:zeroSizeArrayNew- 컴파일러 옵션을 사용합니다.

Visual Studio에서 이 컴파일러 옵션을 설정하려면

  1. 프로젝트의 속성 페이지 대화 상자를 엽니다. 자세한 내용은 Visual Studio에서 C++ 컴파일러 및 빌드 속성 설정을 참조하세요.

  2. 구성 속성>C/C++>명령줄 속성 페이지를 선택합니다.

  3. 추가 옵션에서 /Zc:zeroSizeArrayNew 또는 /Zc:zeroSizeArrayNew-을(를) 추가합니다. 확인을 선택하거나 적용을 선택하여 변경 내용을 저장합니다.

참고 항목

/Zc(규칙)