我有一个std::map<std::string, myStruct>
。返回 a 的地址是安全的myStruct
entry ?
我确信我的条目不会被删除,但可以添加其他条目。
Type::iterator it = m_map.find(key);
if (it != m_map.end())
{
return &(it->second);
}
这是安全的。
的情况下std::map
只有指向已删除元素的迭代器/引用/指针才会失效。
参考:
C++03 标准 23.1.2/8:
仅迭代器和对已擦除元素的引用无效
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)