我需要在另一个函数中使用来自指针引用的 var,所以,当我调用它时,我传递了地址值,但是我怎样才能在那里使用这个指针(而不是创建另一个实例)?看代码段:
//Main region - using Product class -> _products = vector<Product>
int main()
{
_products.reserve(2);
for(i=0;i<2;i++)
productRefe.SetProduct(&_products);
return 0;
}
//Method in Product.cpp
void Product::SetProduct(vector<Product> *productsP)
{
vector<Product> products = *productsP;
Product productInsert;
cout << "Type the description: ";
cin >> productInsert.Struct.description;
products.push_back(productInsert);
}
void Product::GetProducts(string description, bool all, vector<Product> *productsP)
{
int i = 0;
vector<Product> products = *productsP;
if(all)
for(i = 0; i < products.size(); i++)
{
cout << "Description: " << products[i].Struct.description << endl;
cout << "Value" << products[i].Struct.value << endl << endl;
}
}
我相信问题出在方法 SetProduct 的第一行......但是,我能改变什么让它起作用?谢谢