コンパイラ エラー C3534
auto' を含む型の 'new expression' には初期化子が必要です
new 式が auto キーワードおよび既定の /Zc:auto コンパイラ オプションで使用される場合、その new 式で初期化子を指定する必要があります。
このエラーを解決するには
- new 演算子に初期化子式を指定します。
使用例
次の例では、C3534 が示されます。最初の宣言では、型が int の直接初期化子 (0) があるため、エラーが発生しません。2 番目の宣言では、宣言に初期化子がないためエラーが発生します。3 番目の宣言では、new 演算子に初期化子がないため、auto キーワードの 2 番目の使用にエラーが発生します。
// C3534.cpp
// Compile with /Zc:auto
int main()
{
new auto(0);
new auto(); // C3534
auto x = new auto(); // C3534
return 0;
}