Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Non è possibile usare un elenco di inizializzatori racchiusi tra parentesi graffe in un'espressione nuova il cui tipo contiene 'auto/decltype(auto)'
Osservazioni:
Se un auto identificatore di tipo viene visualizzato nella sequenza di identificatore di un nuovo identificatore di tipo o nell'identificatore di tipo di un'espressione new , l'espressione deve contenere un inizializzatore del formato ( assignment-expression ). Il compilatore deduce l'identificatore di tipo dall'oggetto assignment-expression nell'inizializzatore. ad esempio:
new auto(42); // new allocates int
auto c = new auto('a'); // c is of type char*, new allocates char
new (auto*)(static_cast<short*>(nullptr)); // allocates type short*
Per risolvere questo problema, usare le parentesi per racchiudere il valore di inizializzazione dell'espressione new .