编译器错误 C3534
其类型包含“auto”的“new 表达式”必须具有初始值设定项
如果 new 表达式与 auto 关键字和默认 /Zc:auto 编译器选项结合使用,则 new 表达式必须指定初始值设定项。
更正此错误
- 为 new 运算符指定初始值设定项表达式。
示例
下面的示例演示 C3534。 第一个声明不会产生错误,因为它有一个类型为 int 的直接初始值设定项 (0)。 第二个声明会产生错误,因为它没有初始值设定项。 在第三个声明中,所使用的第二个 auto 关键字会产生错误,因为 new 运算符没有初始值设定项。
// C3534.cpp
// Compile with /Zc:auto
int main()
{
new auto(0);
new auto(); // C3534
auto x = new auto(); // C3534
return 0;
}