65,210
社区成员
发帖
与我相关
我的任务
分享
源程序如下int main()
{
vector <item_base*> itemvec;
string isbn;
double price,qty,discount;
cout < <"enter the objects of bulk_item:" < <endl;
while(cin>>isbn>>price>>qty>>discount)
{
bulk_item *p=new bulk_item(isbn,price,qty,discount);
itemvec.push_back(p);
//itemvec.push_back(&bulk_item(isbn,price,qty,discount));
}
//遍历vector并根据容器中元素计算购买100本书的net_price总和
double sum=0.0;
for(vector <item_base*>::iterator iter=itemvec.begin();iter!=itemvec.end();++iter)
sum+=(*iter)->net_price(100);
cout < <"the sum are:" < <sum < <endl;
for(vector <item_base*>::iterator it=itemvec.begin();it!=itemvec.end();++it) delete *it;//这里怎么有这么多指针要删除???
//防止内存泄漏 ,你上面申请了多少就要释放多少
return 0;