【发布时间】:2015-03-14 08:03:50
【问题描述】:
我正在设计一个基于邻接列表的图形类。该类内部有一个 DataStructure :
std::unordered_map<Node,std::list<??>,NodeHash,NodeEqual> map;
我想要的不是??,而是指向存储在列表中的节点元素的指针或指向它的一些迭代器。
我是 C++ 新手。我该怎么办?
【问题讨论】:
-
在
??使用Node* -
如何从 unordered_map 获取指向现有关键节点的指针?
-
使用
&something获取SomeClass*类型指针。 -
旁白:
map应该是您的Node对象的所有者,或者应该包含您的Node的副本对象?或者是其他地方的所有权,你的 keys 也应该是指针? -
我认为 OP 想做一些递归的事情;即序列的类似事物是
typedef std::vector<myvec::iterator> myvec;(不起作用)。