/Zc:zeroSizeArrayNew
(在陣列上呼叫成員 new/delete)
/Zc:zeroSizeArrayNew
編譯器選項會呼叫成員 new
和 delete
,以取得物件的零長度陣列。
語法
/Zc:zeroSizeArrayNew
??-
備註
/Zc:zeroSizeArrayNew
編譯器選項可針對具有虛擬解構函式之類別型別物件的零長度陣列,啟用對成員 new
的 delete
呼叫。 此行為符合標準。 此編譯器選項是 Visual Studio 2019 16.9 版的新功能,且預設會在所有編譯器模式中啟用。 先前,在 Visual Studio 2019 16.9 版之前編譯的程式碼中,編譯器會使用虛擬解構函式叫用全域 new
和 delete
類別型別物件的零長度陣列。
/Zc:zeroSizeArrayNew
選項可能會造成依賴先前不符合行為之程式碼的中斷性變更。 若要還原先前的行為,請使用 /Zc:zeroSizeArrayNew-
編譯器選項。
在 Visual Studio 中設定這個編譯器選項
開啟專案的 [屬性頁] 對話方塊。 如需詳細資料,請參閱在 Visual Studio 中設定 C ++ 編譯器和組建屬性。
選取 [組態屬性]>[C/C++]>[命令列] 屬性頁。
在 [其他選項] 中,新增
/Zc:zeroSizeArrayNew
或/Zc:zeroSizeArrayNew-
。 選擇 [確定] 或 [套用] 以儲存變更。