Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
w tym kontekście dozwolone jest tylko zwykłe wyrażenie "decltype(auto)"
Uwagi
Jeśli decltype(auto) jest używany jako symbol zastępczy dla zwracanego typu funkcji, musi być używany przez siebie. Nie można jej używać jako części deklaracji wskaźnika (decltype(auto)*), deklaracji referencyjnej (decltype(auto)&) ani jakiejkolwiek innej takiej kwalifikacji.
Przykład
Poniższy przykład generuje kod C3550:
// C3550.cpp
// compile with: /c
decltype(auto)* func1(); // C3550
decltype(auto)& func2(); // C3550
decltype(auto)&& func3(); // C3550
auto* func4(); // OK
Aby rozwiązać ten problem, usuń wszystkie nielegalne kwalifikacje w systemie decltype(auto). Na przykład decltype(auto)* func1() można przekształcić w auto* func1().