创建一个Book类,数据成员价格(double price)和书目编号(int bookid),成员函数包含构造函数、拷贝构造函数,析构函数和其它相关函数。包含静态数据成员int countBook,静态成员函数showCount()。创建若干个对象测试上述功能。其中,以对象调用和类名调用的方式调用静态成员函数。
时间: 2023-04-07 09:02:11 浏览: 172
可以回答这个问题。以下是代码示例:
```c++
#include <iostream>
using namespace std;
class Book {
private:
double price;
int bookid;
static int countBook;
public:
Book(double p, int id) : price(p), bookid(id) {
countBook++;
}
Book(const Book& other) : price(other.price), bookid(other.bookid) {
countBook++;
}
~Book() {
countBook--;
}
static void showCount() {
cout << "There are " << countBook << " books." << endl;
}
};
int Book::countBook = 0;
int main() {
Book b1(10.5, 1);
Book b2(20.0, 2);
Book b3(b1);
Book::showCount();
b2.showCount();
return 0;
}
```
输出结果为:
```
There are 3 books.
There are 3 books.
```
说明静态数据成员和静态成员函数的调用都是正确的。
阅读全文