我是新來的C++,並且在編寫該函數的代碼時遇到了麻煩。我只是需要它將ID,名稱,產品描述,價格和數量等產品價值存儲到矢量庫存中。如何爲此addProduct函數編寫implmentation代碼
Store.hpp
#ifndef STORE_HPP
#define STORE_HPP
class Product;
class Customer;
#include<string>
#include "Customer.hpp"
#include "Product.hpp"
class Store
{
private:
std::vector<Product*> inventory;
std::vector<Customer*> members;
public:
void addProduct(Product* p);
void addMember(Customer* c);
Product* getProductFromID(std::string);
Customer* getMemberFromID(std::string);
void productSearch(std::string str);
void addProductToMemberCart(std::string pID, std::string mID);
void checkOutMember(std::string mID);
};
#endif
我試圖把它寫這種方式。我知道這是錯誤的,請幫助我。
在此先感謝
void Store::addProduct(Product* p)
{
Product* p(std::string id, std::string t, std::string d, double p, int qa);
inventory.push_back(p);
}
您似乎對什麼是指針以及何時使用指針感到困惑。請先清理一下。 'addProduct'成員函數已經接收到一個指向'Product'類的實例的指針,爲什麼你要使用構造函數,並且你在哪裏期待'id'等信息來自哪裏? – riodoro1
但我得到一個錯誤,說[錯誤]沒有匹配函數調用'std :: vector :: push_back(Product *(&)(std :: string,std :: string,std :: string,double,int ))' –
user1210000
@ riodoro1請告訴我如何寫代碼存儲在載體 – user1210000