Freigeben über


Compilerfehler C3534

 

Ein 'new expression', dessen Typ 'auto' enthält, muss einen einzelnen Initialisierungsausdruck aufweisen.

Wenn ein new-Ausdruck zusammen mit dem auto-Schlüsselwort und der Standardcompileroption /Zc:auto verwendet wird, muss der Ausdruck new einen einzelnen Initialisierer angeben.

So beheben Sie diesen Fehler

  1. Geben Sie einen einzelnen Initialisierungsausdruck für den new-Operator an.

Im folgenden Beispiel wird C3534 veranschaulicht.Die erste Deklaration ergibt keinen Fehler, da sie über einen direkten Initialisierer (0) verfügt, dessen Typ int ist.Die zweite Deklaration ergibt einen Fehler, da sie nicht über einen Initialisierer verfügt.In der dritten Deklaration ergibt die zweite Verwendung des auto-Schlüsselworts einen Fehler, da der new-Operator keinen Initialiserer aufweist.

// C3534.cpp
// Compile with /Zc:auto
int main()
{
   new auto(0); 
   new auto();          // C3534
   auto x = new auto(); // C3534
   return 0;
}

Siehe auch

Auto-Schlüsselwort
operator new (<new>)