私は2つの要素(今のところ)マップを持っています:
#define IDI_OBJECT_5001 5001
#define IDI_OBJECT_5002 5002
/.../
ResourcesMap[IDI_OBJECT_5001] = "path_to_png_file1";
ResourcesMap[IDI_OBJECT_5002] = "path_to_png_file2";
このマップを検索するメソッドを実装しようとしています。文字列引数 (ファイル パス) とメソッド戻り値 int (マップのキー値) を渡しています。
int ResFiles::findResForBrew(string filePath)
{
string value = filePath;
int key = -1;
for (it = ResourcesMap.begin(); it != ResourcesMap.end(); ++it)
{
if (/*checking if it->second == value */)
{
key = it->first;
break;
}
}
return key;
}
クラス ResFiles { public: ResFiles(); ~ResFiles();
map <int, string> ResourcesMap;
map <int, string>::const_iterator it;
void filenamesForBrew();
int findResForBrew(string filePath);
private:
};
it->second-> == 値を確認し、そのキーを返すにはどうすればよいですか? 助けていただければ幸いです。前もって感謝します。