【发布时间】:2010-08-03 09:07:42
【问题描述】:
我有一个带有 map<K,V> 变量的类,它在 c'tor 中获取它的值,如下所示:
class Foo {
map<K,V> m;
Foo (map<K,V>& newM) : m(newM) {}
map<K,V>::iterator bar () { ... }
}
函数bar 遍历映射m,并返回一些指向某个元素的迭代器。我这样调用函数:
std::map<K,V> map;
//fill map
Foo foo(map);
map<K,V>::iterator it = foo.bar();
我的问题是,此时它是否指向map 的成员?还是它被复制到Foo.m 并因此迭代器指向不同的地图?
【问题讨论】: