用c++语言编写一个完整代码在主函数中,可以创建一个指向 Book 类的指针数组,然后动态地创建 Book 类的对象和 EBook 类的对象,将这些对象存储到指针数组中。
时间: 2023-02-09 07:41:50 浏览: 116
```
#include <stdio.h>
#include <stdlib.h>
#define MAX_BOOKS 10
// Book 类的声明
class Book {
public:
Book(char* t, char* a, int p) {
title = t;
author = a;
pages = p;
}
void setTitle(char* t) { title = t; }
void setAuthor(char* a) { author = a; }
void setPages(int p) { pages = p; }
char* getTitle() { return title; }
char* getAuthor() { return author; }
int getPages() { return pages; }
private:
char* title;
char* author;
int pages;
};
// EBook 类的声明,继承于 Book 类
class EBook: public Book {
public:
EBook(char* t, char* a, int p, char* f):Book(t, a, p) {
fileFormat = f;
}
void setFileFormat(char* f) { fileFormat = f; }
char* getFileFormat() { return fileFormat; }
private:
char* fileFormat;
};
int main() {
// 创建一个指向 Book 类的指针数组
Book* books[MAX_BOOKS];
// 动态地创建 Book 类的对象
books[0] = new Book("《计算机科学概论》", "Alan", 792);
books[1] = new Book("《红楼梦》", "曹雪芹", 1225);
// 动态地创建 EBook 类的对象
books[2] = new EBook("《钢铁是怎样炼成的》", "奥斯特洛夫斯基", 296, "PDF");
books[3] = new EBook("《哈利·波特与被诅咒的孩子》", "J.K. 罗琳", 672, "EPUB");
return 0;
}
```
阅读全文