我创建了一个名为 Book 的类,它可以有很多本书。但是我想创建一个类架子,它只能包含 10 本书,如果它大于 10 十,它应该打印错误消息!但是我想不出一种制作类架子的方法。到目前为止,我已经这样做了:
#include <iostream>
#include <string>
using namespace std;
class Book{
private:
string bookName;
int pNum;
public:
Book();
Book(string tempName, int tNum){
setName(tempName);
setPageNum(tNum);
}
void setName(string bName){
bookName = bName;
}
void setPageNum(int tempNum){
pNum = tempNum;
}
string getName(){
return bookName;
}
int getPageNum(){
return pNum;
}
};
class Shelf{
public:
Book nBook[10];
void addbook();
void Book::addbook(Book nBook[10])
{
for(int i = 0; i<10; i++)
nBook[i] = nBook[i].setName(string bName)
}
};
int main(){
Book math = Book("math", 500);
Book abcd = Book("abcd", 501);
cout << English.getName() <<" "<<English.getPageNum()<<endl;
cout << German.getName() <<" "<<German.getPageNum()<<endl;
}
最佳答案
您可以使用标准 vector 类来存储书架中的 Book 对象。 在下面的示例中,书对象将在添加到书架时被复制
#include <vector>
using namespace std;
class Shelf{
public:
vector<Book> books;
bool addbook(Book book)
{
if(books.size() > 10)
{
return false;
}
else
{
books.push_back(book);
return true;
}
}
};
关于c++ - 在另一个类中使用一个类的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29585562/