【发布时间】:2011-04-09 00:46:58
【问题描述】:
我有一个包含 struct Foo 项(不是指针)的哈希图。现在,我想在列表中有这些项目的指针。我怎样才能做到这一点?
我尝试迭代哈希图并将 &*iter 插入列表,但指针一旦超出范围就会失效。
我应该能够在没有动态分配的情况下做到这一点,不是吗?
我喜欢这样,但它不起作用: 为了(...) { Foo& bar = *iter; list.insert(&bar); }
【问题讨论】:
-
如果您发布一些演示问题的代码会有所帮助。 “指针一旦超出范围就会失效”是什么意思?你的意思是“一旦哈希图超出范围?”
-
没有。 Hashmap 是在整个程序运行期间有效的类的成员。