私はプログラムを作成しています。マップからオブジェクトを取得し、オブジェクトの値を更新する必要があります。ここに私のデータクラスからの私のコードの一部である:ここでマップ内の要素の値を更新する方法C++
StockHolding& StockData::findHolding(const string &ticker) {
StockHolding var;
var = portfolio[ticker];
return var;
}
はdata.hクラスのコードは次のとおりです。
typedef std::map<std::string, StockHolding>StockMap;
class StockData
{
private: StockMap portfolio;
private: string portfolioFile;
private: void splitString(vector<string> &, const string &, char);
public:
StockData();
StockData(const string &);
void addHolding(StockHolding &);
void readPortfolioFile();
StockHolding& findHolding(const string &);
void display();
void writePortfolioFile();
};
そしてここでは、私のドライバークラスからのコードは次のとおりです。
main(){
StockHolding sH = sD.findHolding("APPL");
sH.setPrice(5);
sD.findHolding("APPL").setShares(15);
sD.display();
sD.writePortfolioFile();
}
をしたいです!ありがとう! – user3344862
ありがとうございますが、答えの確認はsongyuanyaoに転送してください。彼は私が見逃した何かを見つけました。帰国後の変数を参照する必要があります。もう1〜2分であなたを得ることができます。 – user4581301