显式调用具有推导返回类型(自动)的转换运算符的正确语法是什么

我们在 C++ 中什么是运算符 auto的问题中遇到了语言实现之间奇怪的不一致。.

在那里,显式调用具有推导返回类型 (auto) 的转换运算符。但似乎编译器不同意是否应该使用auto或推导类型GCC Clang调用它:

struct A
{
  operator auto() { return 0; }
};

int main()
{
   A a;
   a.operator auto(); // Clang and MSVC: OK,    GCC: ERROR
   a.operator int();  // Clang and MSVC: ERROR, GCC: OK
}

哪种语言实现是正确的?这是否在标准中指定不足?

以上是显式调用具有推导返回类型(自动)的转换运算符的正确语法是什么的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>