定义一个计数器类Counter,包含私有成员int n,重载运算符“+”,实现对象的相加c++
时间: 2024-09-20 17:13:24 浏览: 55
cpu.rar_用c++类一个cpu
你可以定义一个名为`Counter`的类,用于创建计数器的对象,它有一个私有的整型变量`n`表示当前的计数值。为了能够重载"+"运算符,我们可以实现一个友元函数或者提供一个公共的成员函数来进行加法操作。以下是简单的C++代码示例:
```cpp
#include <iostream>
class Counter {
private:
int n;
public:
// 构造函数,初始化计数器
Counter(int initial = 0) : n(initial) {}
// 重载+运算符,让两个Counter对象可以相加
Counter operator+(const Counter& other) const {
return Counter(n + other.n);
}
// 可能需要的一个getter方法,用于获取计数值
int get_value() const { return n; }
// 显示计数值的友元函数
friend std::ostream& operator<<(std::ostream& os, const Counter& counter) {
os << "Counter value: " << counter.n;
return os;
}
};
// 示例如何使用Counter类
int main() {
Counter c1(5);
Counter c2(10);
Counter sum = c1 + c2; // 相加
std::cout << sum << "\n";
return 0;
}
```
在这个例子中,当我们创建两个`Counter`对象并将它们相加时,会自动调用`operator+`方法。注意,`friend`关键字使得`operator<<`成为`Counter`类的友元,以便于输出计数器的值。
阅读全文