私はいくつかの値を持つマップを持っています。次に、いくつかの文字列を返す関数があり、この文字列はマップ内のキーのメンバーになります。私は、キーに基づいて値を取得し、それを引数として取る別の関数に渡す必要があります。C++のマップから値を取得する方法
map<string,int> SymbolTable;
SymbolTable["R0"]=0;
SymbolTable["R1"]=1;
SymbolTable["R2"]=2;
SymbolTable["R3"]=3;
string value=getValue(); //this one will return something from R0 to R3
nextFunction(SymbolTable[value]); // this part is wrong
私が値== "R0"または静的な値を与えた場合、これは期待どおりに機能しています。しかし、この動的な値を渡すたびに、常に0が返されるので、nextFunctionは引数として0をとります。 getValue()から戻り値を出力しようとしましたが、戻り値が正しいかどうか確認しています。私はthisと同様の方法を試しましたが、すべて私に同じ問題があります。ここで間違っていることについて誰かが私を導くことができますか? TIY
は 'のstdを使用する方法を言及するおそらく価値があるだろう使用することができます::マップ: :find() '、この問題を修正しました。 –
getValue()から戻り値を出力しようとしましたが、これは私が期待しているものです – tuxebin
@πάνταῥεῖ、ありがとうございます。完了しました。しかし、私は 'count()'にバイアスを持っています:-) – WhiZTiM