【发布时间】:2014-08-29 23:36:55
【问题描述】:
我有这段代码,但它给了我很多错误。我不明白背后的原因。
void coolingpie(int n)
{
int i=0,j;
while(i<n)
{
int p;
vector<int> pies[p], racks[p]; // p number of cooling pie
cin>> p; //number of coiling pies or racks
for(j=0;j<p;j++)
{
cin>>input; //reading the weights of the p pies
pies.push_back(input);
}
for(j=0;j<p;j++)
{
cin>>p; // reading the maximum weights of the racks
racks.push_back(input);
}
std::sort(pies.begin(), pies.end());
std::sort(racks.begin(), racks.end());
findthemaxpies( vector<int>& pies, vector<int>& racks);
}
}
【问题讨论】:
-
让它
vector<int> pies, racks; -
这条线应该做什么?
findthemaxpies( vector<int>& pies, vector<int>& racks); -
如果您在以
p为上限的同一循环中读入p,那么您将度过一段糟糕的时光。 -
vector<int> pies[p], racks[p];你误解了vector的作用。单个vector可以包含多个值。您正在使用该行代码声明一个vectors数组。这当然是不正确的。 -
在初始化之前你正在使用 p。
标签: c++ data-structures vector