[英]Display Hash-Map Value C++
創建哈希圖並輸出其鍵值的簡單程序。
std::hash_map<int, std::vector<char>> numPad;
for (auto const key_1: numPad)
{
for (auto const key_2: key_1.second)
{
std::cout << key_1; // Does NOT work! (*error*)
std::cout << key_2; // Works!
}
}
我收到以下錯誤:
( 錯誤 )錯誤1錯誤C2679:二進制
'<<'
:未找到采用'const std::pair<const _Kty,_Ty>'
類型的右側操作數的運算符(或沒有可接受的轉換)
如何顯示key_2值而不會出現此錯誤?
在基於范圍的for循環中使用時, std::map
將使用std::pair
進行迭代。 而且由於std::pair
std::cout
不匹配,您會得到一個錯誤,因此, key_1
直接使用key_1
, key_1.first
嘗試使用key_1
獲取地圖的key_1.second
,或者嘗試key_1.first
獲取地圖的映射值。地圖。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.