編譯器錯誤 C3534
型別包含 'auto' 的 'new' 運算式必須具有初始設定式
如果 new 運算式與 auto 關鍵字及預設 /Zc:auto 編譯器選項搭配使用,new 運算式就必須指定初始設定式。
若要更正這個錯誤
- 指定 new 運算子的初始設定式運算式。
範例
下列範例示範 C3534 錯誤。第一個宣告不會產生錯誤,因為它具有直接的初始設定式 (0),其型別為 int。第二個宣告則會產生錯誤,因為它沒有初始設定式。在第三個宣告中,第二次使用 auto 關鍵字時會產生錯誤,因為 new 運算子沒有初始設定式。
// C3534.cpp
// Compile with /Zc:auto
int main()
{
new auto(0);
new auto(); // C3534
auto x = new auto(); // C3534
return 0;
}