c++设计一个计数器类,当建立该类的对象时其初始状态为0
时间: 2023-05-14 12:05:51 浏览: 60
好的,我可以回答这个问题。以下是一个简单的计数器类的实现:
```c++
class Counter {
public:
Counter() : count(0) {}
void increment() { count++; }
void decrement() { count--; }
int getCount() const { return count; }
private:
int count;
};
```
当你创建一个 Counter 对象时,它的初始状态为 0。你可以使用 increment() 和 decrement() 方法来增加或减少计数器的值,使用 getCount() 方法来获取当前计数器的值。
相关问题
C++设计一个计数器类,当建立该类的对象时其初始状态为0,考虑为计数器定义成员
函数,包括:
1. 构造函数:将计数器的初始状态设置为0;
2. 增加计数器值的函数:将计数器的值加1;
3. 减少计数器值的函数:将计数器的值减1;
4. 获取计数器当前值的函数:返回当前计数器的值。
示例代码如下:
```c
class Counter {
private:
int count;
public:
Counter() {
count = 0;
}
void increase() {
count++;
}
void decrease() {
count--;
}
int getCount() {
return count;
}
};
```
使用示例:
```c
int main() {
Counter c; // 创建计数器对象并将其初始值设为0
c.increase(); // 将计数器值加1
c.increase(); // 将计数器值加1
c.decrease(); // 将计数器值减1
int count = c.getCount(); // 获取当前计数器的值
cout << "Current count: " << count << endl; // 输出当前计数器的值
return 0;
}
```
用c++定义一个平面上点的类Point,该类包含平面坐标x,y和统计当前创建该对象个数的计数器count;构造函数,析构函数,以及能够输出计数器count的函数。设计程序,实现在任意时候都能够访问计数器。
以下是C++定义一个平面上点的类Point的示例代码:
```c++
#include <iostream>
class Point {
private:
int x, y;
static int count;
public:
Point(int x, int y) : x(x), y(y) {
++count;
}
~Point() {
--count;
}
static int getCount() {
return count;
}
void print() {
std::cout << "(" << x << "," << y << ")" << std::endl;
}
};
int Point::count = 0;
int main() {
Point p1(1, 2);
Point p2(3, 4);
std::cout << "Number of points: " << Point::getCount() << std::endl;
p1.print();
p2.print();
return 0;
}
```
在上述代码中,Point类包含了私有成员变量x和y分别代表平面上的横纵坐标,还包含了一个静态成员变量count代表当前创建该对象的个数。构造函数用来初始化x和y的值,并且在创建对象时将count计数器加1,析构函数则用来在销毁对象时将count计数器减1。此外,类还包含了一个静态成员函数getCount用来获取当前创建的对象个数。print函数用于输出该点的坐标。
在main函数中,我们创建了两个Point对象p1和p2,并且在每次创建对象时都会更新count计数器。最后通过静态成员函数getCount输出了当前创建的对象个数。