class map_finder { public: map_finder(const std::string &cmp_string):m_s_cmp_string(cmp_string){} bool operator ()(const std::map::value_type &pair) { return pair.second == m_s_cmp_string; } private: const std::string &m_s_cmp_string; }; 尤其是這一小段: map_finder(const std::string &cmp_string):m_s_cmp_string(cmp_string){} bool operator ()(const std::map::value_type &pair) { return pair.second == m_s_cmp_string; }
1 回答

神不在的星期二
TA貢獻1963條經驗 獲得超6個贊
哪里獨特了?
string類型在std命名空間中定義,如果沒有using namespace std就要用std::來限定作用域。
同理map也是一樣。
map中的元素是pair類型,pair有2個成員,first和second,前者是map::key_type類型,后者是map::value_type類型。
key_type和value_type是定義在map中的,所以要用map::限定
- 1 回答
- 0 關注
- 97 瀏覽
添加回答
舉報
0/150
提交
取消