用C++语言直接写一个代码不要复述文字首先,创建一个基类 Book,包含书的基本信息,如书名、作者、出版社等。这个类可以包含构造函数、析构函数、复制构造函数等成员函数。为了实现多态输出,可以在这个类中编写一个虚函数 print(),用于输出图书的信息。
时间: 2023-02-16 13:21:13 浏览: 133
以下是用 C 语言实现的 Book 类的代码:
```
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAX_LEN 100 // 定义字符串最大长度
// 定义 Book 类
class Book {
public:
// 构造函数
Book(const char *name, const char *author, const char *publisher) {
strcpy(this->name, name);
strcpy(this->author, author);
strcpy(this->publisher, publisher);
}
// 析构函数
~Book() {
// 清空成员变量
memset(name, 0, MAX_LEN);
memset(author, 0, MAX_LEN);
memset(publisher, 0, MAX_LEN);
}
// 复制构造函数
Book(const Book &book) {
strcpy(this->name, book.name);
strcpy(this->author, book.author);
strcpy(this->publisher, book.publisher);
}
// 虚函数,用于输出图书信息
virtual void print() {
printf("书名: %s\n", name);
printf("作者: %s\n", author);
printf("出版社: %s\n", publisher);
}
private:
char name[MAX_LEN]; // 书名
char author[MAX_LEN]; // 作者
char publisher[MAX_LEN]; // 出版社
};
```
希望这个代码能帮到你!
阅读全文