次の方法で共有


コンパイラ エラー C3550

このコンテキストでは単純な 'decltype(auto)' のみが許可されます

decltype(auto) を関数の戻り値の型のプレースホルダーとして使用する場合は、単独で使用する必要があります。 ポインターの宣言 (decltype(auto)*)、参照の宣言 (decltype(auto)&)、またはその他の修飾の一部として使用することはできません。

次の例では C3550 が生成されます。

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

auto* func4();   // OK

エラーを解決するには、 decltype(auto)のすべての無効な修飾を削除します。 たとえば、 decltype(auto)* func1()auto* func1()に変換できます。

関連項目

auto