我设置了一个编译器/Za
选项来禁用语言扩展,以便编译器使用严格标准的 ISO C++。这是我收到以下警告的示例接口类
警告 C4180:应用于函数类型的限定符没有意义;忽略
这是关于函数返回类型中的 const 限定符,如果我删除 const,警告会消失,但我不想这样做,我想重新启用 lanqage 扩展。
我的问题是:这个警告合理吗?如果不是,那么我将使用 pragma 禁用警告,但在此之前我想确定这个警告是“误报”
因为下面的类是正确的 ANSI ISO C++ 不是吗?所以应该禁用警告?
class IBet
{
public:
IBet() { };
virtual ~IBet() = 0 { };
virtual const float parentChips() const = 0; // Warning C4180
virtual const short parentChilds() const = 0; // Warning C4180
// ...
};