我想知道如何为类设置布尔值。我在其他人的代码中看到过这个,但我自己不知道怎么做。格式将是这样的:
class myClass{
//...
};
myClass getClass(){
myClass myclass;
//...
return myclass;
}
int main(int argc, char **argv){
myClass myclass;
myclass = getClass();
if(myclass){
//do stuff
}
//...
if(!myclass){
//do other stuff
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
您需要bool为您的类提供一个转换函数,如下所示:
class myClass{
public:
explicit operator bool() const { /* ... */ }
};
Run Code Online (Sandbox Code Playgroud)
最好进行转换explicit以避免意外转换。在if语句中使用它很好,因为它被认为是一个明确的上下文。
| 归档时间: |
|
| 查看次数: |
82 次 |
| 最近记录: |