【发布时间】:2021-11-15 12:14:30
【问题描述】:
我可能没有很好地表达这个问题,但这里有一个例子来说明我的意思。 unordered_map 可以这样创建:
unordered_map<string,int> map = {
{"A", 3},
{"B", 2},
{"C", 1}
};
我想知道的是如何让我自己的类能够以这种方式运行?比如,所有传递给地图的值是如何解释的?如何访问我分配给它的数组中的每个单独的值?事实上,它甚至会是一个数组,因为这些值不一定都共享一个类型?
【问题讨论】:
-
en.cppreference.com/w/cpp/language/list_initialization
Q(std::initializer_list<Q>) {} -
这能回答你的问题吗? What does initializer_list do?
-
C++ 的 literals 由整数文字、字符文字、浮点文字、字符串文字、布尔文字和
nullptr以及用户定义的文字(看起来很像其他文字)。所以,是的,你选择的术语有点不对劲。好在你跟进了一个例子。
标签: c++ arrays class object unordered-map