Condividi tramite


Errore del compilatore C3550

in questo contesto sono consentiti solo valori 'decltype(auto)' normali

Osservazioni:

Se decltype(auto) viene usato come segnaposto per il tipo restituito di una funzione, deve essere usato da solo. Non può essere usato come parte di una dichiarazione di puntatore (decltype(auto)*), di una dichiarazione di riferimento (decltype(auto)&) di qualsiasi altra qualifica simile.

Esempio

L'esempio seguente genera l'errore C3550:

// C3550.cpp
// compile with: /c
decltype(auto)* func1();   // C3550
decltype(auto)& func2();   // C3550
decltype(auto)&& func3();   // C3550

auto* func4();   // OK

Per risolvere l'errore, rimuovere tutte le qualificazioni non valide in decltype(auto). Ad esempio, decltype(auto)* func1() può essere trasformato in auto* func1().

Vedi anche

auto