单目运算符重载为成员函数
时间: 2023-08-21 09:09:09 浏览: 113
详解C++编程中的单目运算符重载与双目运算符重载
5星 · 资源好评率100%
单目运算符重载可以作为类的成员函数来实现,这样可以更方便地访问类的私有成员变量。
以重载取反运算符(!)为例,可以在类中定义如下成员函数:
```cpp
class MyClass {
public:
bool operator!() const {
return !somePrivateMember; // somePrivateMember 为类的私有成员变量
}
private:
bool somePrivateMember;
};
```
这样就可以通过以下方式使用取反运算符:
```cpp
MyClass obj;
if (!obj) {
// somePrivateMember 为 true 时执行
}
```
需要注意的是,成员函数形式的单目运算符重载只能对该类的对象进行操作,无法对其他类型的操作数进行操作。如果需要对其他类型进行操作,可以使用全局函数形式的单目运算符重载。
阅读全文