C++新手,问个问题

2020-03-24 11:19:08 +08:00
 yulihao
在 Python 中的
a={}
在 C++中应该怎么写?
1147 次点击
所在节点    程序员
6 条回复
wevsty
2020-03-24 11:20:32 +08:00
std::vector<type> a;
wevsty
2020-03-24 11:21:22 +08:00
@wevsty 不对,看错了应该是 map
std::map<key, value> a;
Procumbens
2020-03-24 11:23:01 +08:00
为了实现各种 O(1)的话用 unordered_map 。
unordered_map<keyType, valueType> dict;

e.g.,
unordered_map<int, int> dict;
CismonX
2020-03-24 11:29:14 +08:00
std::unordered_map

(其实 python 3.7 开始的 dict 类似于 Java 中的 LinkedHashMap,在 STL 中并没有对应的实现)
nnqijiu
2020-03-24 11:53:12 +08:00
map
jmc891205
2020-03-24 12:04:36 +08:00
python 的 dict 你可以随便往里面塞各种类型的东西
C++的 unordered_map 不行 当然 C++17 之后可以用 std::any 但还是没有 python 的 dict 那么灵活

当然 通常来说 我们不应该把随便什么类型的东西都往 dict 里塞
定义一个良好的数据结构可以使 code 更容易维护

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/655624

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX