- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
这是我所拥有的,我是 C++ 的新手,所以我不确定这是否正确...
typedef pair<string, int>:: make_pair;
hash_map <string, int> dict;
dict.insert(make_pair("apple", 5));
我想给我的hash_map "apple",我想返回5.我该怎么做?
最佳答案
hash_map
不是标准的 C++,所以您应该查看您正在使用的任何库的文档(或者至少告诉我们它的名称),但很可能这会起作用:
hash_map<string, int>::iterator i = dict.find("apple");
if (i == dict.end()) { /* Not found */ }
else { /* i->first will contain "apple", i->second will contain 5 */ }
或者,如果您确定 "apple"
在dict
,你也可以这样做:dict["apple"]
.例如cout << dict["apple"];
将打印出 5.
此外,为什么在代码中使用 typedef?你不能只使用 std::make_pair
?而且,它不会按照您编写的方式进行编译(使用两个前导冒号)
关于c++ - 如何在 C++ 中查找 hash_map?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1949470/
在visual C++下,我们有“hash_map”和“hash_set”。在 g++ 中,我们有“stdext::hash_map”和“stdext::hash_set”。它们在各自的性能或其他因素
我在 Ubuntu 中使用 GCC 定义了一个 hash_map stringHashMap。我保证 stringHashFunction 是正确的,因为我可以在 hash_map 中正确使用 str
我知道这应该很容易,但我就是没能消除编译错误。这是我的代码: template struct basic_field_type_map : public hash_map, basic_string>
我正在尝试读取单词列表并将它们连同它们在按字母顺序排序的文件中的位置一起保存在 C++ STL hash_map 中。这个想法是稍后我需要能够判断一个字符串是否是一个词以及它是在另一个词之前还是之后。
#include using namespace std; class hash_t : public __gnu_cxx::hash_map > { }; hash_t hash; ... 我在使
我想要一个 std::hash_map 将(例如)常规 std:string 映射到 多个不同的特化另一个模板类。 这个例子是我想要实现的(虽然它是错误的并且无法编译): template class
hash_map 和 hash_set header 尚未包含在 C++ 标准中,但它们可作为我最近使用的所有编译器的扩展使用。 我想知道在不牺牲可移植性的情况下,在实际代码中我可以在多大程度上依赖这
我想看一个如何正确重写 stdext::hash_compare 的简单示例,以便为我自己的用户定义类型定义新的哈希函数和比较运算符。我正在使用 Visual C++ (2008)。 最佳答案 这就是
我使用以下结构: hash_map> 当我最初用从文本文件中读取的信息填充散列映射时,我可以毫无问题地将元素插入到那些 time_t 列表中。 hash_t::iterator it = hash.f
是否保证当 hash_map/unordered_map 加载相同的项目时,它们在迭代时具有相同的顺序?基本上我有一个 HashMap ,我从一个文件加载它,我定期将有限数量的项目提供给一个例程,之后
我有一个 HashMap 定义为 class KeyType { int key; mutable bool flag; KeyType(int key) : key(key)
我是 c++ 中的 hash_map 的新手。我必须将表转换为散列图。 这就是我在程序中声明和使用 hash_map 的方式 我正在使用 Microsoft Visual Studio。 #inclu
如何将迭代器作为 hash_map 的键? 你会如何在 gcc、Microsoft c++ 下定义它? 例如 vector::iterator i; hash_map::iterato
我有一个多线程应用程序,它使用 C++ STL hash_map 来存储键值对。 hash_map 定义如下: struct eqstr { bool operator()(const strin
我正在比较我编写的一个简单的哈希函数,该函数只是将它乘以一个质数模另一个质数(表大小),结果证明 STL 慢了 100 倍。这是我写的测试方法: stdext:: hash_map hashDict;
我创建了一个小类并尝试将其用作 STL hash_map 中的数据。大量搜索让我知道我需要添加一些东西作为分配器,但到目前为止我还没有看到如何在我的类里面使用 STL 中的默认分配器的示例。有人可以帮
key 的哈希值被计算出来并除以一个质数。一般来说,是否有任何标准素数(比如 32/64 位)? 我的理解是哈希表不可调整大小/不可调整,其内部数组取决于此。如果我有一个只有 5 个元素的哈希表,键空
我想访问 C++ hash_map 的散列值。我试过: __gnu_cxx::hash_map my_table; const hash hh = my_table.hash_funct(); str
我正在开发一个高性能应用程序,其中所有调用都必须合理。我有一张 map ,在每次交易开始时使用一次来进行我想改进的查找。 map 在启动时加载,之后不会改变。 下面映射中的键是一个 std::stri
使用 STL C++ hash_map... class MyKeyObject { std::string str1; std::string str2; bool oper
我是一名优秀的程序员,十分优秀!