2
这是我的代码,用于将CD添加到我的库存中。我添加它,但是当我选择显示广告资源选项时,它不会显示在那里。库存大厦
为的addItemvoid addCD(Inventory i) {
int isbn = readIsbn();
if (isbn) {
char buffer[BUF_SIZE];
cout << "CD title: ";
cin.getline(buffer,BUF_SIZE);
string title(buffer);
cout << "Developer name: ";
cin.getline(buffer,BUF_SIZE);
string developer(buffer);
CD new_CD(isbn,title,developer);
i.addItem(new_CD);
}
函数定义如下:
Inventory::addItem(Item& new_item) {
// Lookup item in inventory
ItemTable::const_iterator i = _table.find(new_item.getIsbn());
if (i == _table.end()) {
Item *ptrItem = new_item.clone();
_table[ptrItem->getIsbn()] = ptrItem;
} else {
cout << "Warning: Item with isbn " << new_item.getIsbn()
<< " already exists" << endl;
}
}
没有错误,但只是库存不显示新添加的项目。
如何调用addCD()? – MikeCAT
请考虑['getline'](http://en.cppreference.com/w/cpp/string/basic_string/getline)的'std :: string'版本。 – BoBTFish