编译器错误 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