这在C++中意味着什么
What does this mean in C++
我在Visual C++应用程序中遇到过这个问题
extern map<string, rpcfn_type> mapCallTable;
或
map<string, string>
什么意思?不是地图的事情,而是
<string, string>
.part
这些是模板参数; map
是一个类模板,在您告诉它它将要使用的类型之前,它不完整。第一个是密钥的类型,第二个是通过密钥存储的数据类型。
std::map
是一个模板。使用它来创建具有键以及与该键关联的一些数据的类型。尖括号是指定这两种类型的位置,因此(例如),map<string, string>
定义一个类型,该类型使用一个字符串作为键,并将另一个字符串与第一个字符串相关联。
一个可能更容易遵循的方法是:
struct person {
string name;
string email_address;
phone_number home;
phone_number mobile;
};
map<string, person> people;
这让我(例如)使用昵称作为密钥来查找一个人的姓名、电子邮件地址、电话号码等。
您不能单独使用<string, string>
部分,因为它是map
的修饰符。
map
是一种模板类型,<string, string>
是指它使用的类型。 map<string, string>
表示密钥类型为 string
且值类型也为 string
的map
。
相关文章:
- 这行代码在C++类中意味着什么
- 这对"With a stackless coroutine, only the top-level routine may be suspended."意味着什么
- @CPPFLAGS@在 Makefile.in 中意味着什么?
- 生成文件"relink"意味着什么?
- 从二进制流中读取时,将双精度变量的地址转换为 char* 意味着什么?
- 在这种情况下,"typename..."意味着什么?
- "in-situ without memory allocation" 字符串的愚蠢实现意味着什么?
- 使用typedef有什么用,它意味着什么
- GCC 的 -Wpsabi 选项究竟有什么作用?压制它意味着什么?
- 这在C++ "It does not own the underlying data, and so is cheap to copy or assign"中意味着什么
- 由于某种原因,我的代码中出现了 [json.exception.type_error.302]。我知道错误意味着什么,但我不知道哪里有故障
- 调用堆栈显示 SIGBUS,这意味着什么
- C++标准在[basic.scope.hiding]中"same scope"到底意味着什么?
- 评估对象的创建意味着什么?
- 当我们在 C++ 中说"initialize the object"时,它实际上意味着什么?
- C++这种结构"InterceptionKeyStroke &kstroke = * (InterceptionKeyStroke *) &stroke"意味着什么?
- 该语法在C 中意味着什么
- 链接标志对静态库意味着什么
- 由mpglib输出的"hip: Can't rewind stream by 74 bits"到底意味着什么?
- 这在 C# 中意味着什么以及如何使用它