use*_*375 2 c++ explicit explicit-conversion c++11
我operator bool()在课外定义函数有问题
class A{
public:
explicit operator bool() const;
};
Run Code Online (Sandbox Code Playgroud)
我在课外定义函数为......
explicit A::operator bool() const {
...
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误 - error: ‘explicit’ outside class declaration
做错了什么?
inline如果您已经为声明编写了它,就像您不应该为定义编写一样,您不能explicit在类定义之外编写:
它可能只出现在类定义中的这种函数声明的decl-specifier-seq中.
所以,只需删除它:
/*explicit*/ A::operator bool() const {
// ...
}
Run Code Online (Sandbox Code Playgroud)