c – 向量中的每个元素都有唯一的内存地址吗?
发布时间:2020-12-16 10:13:24 所属栏目:百科 来源:网络整理
导读:相当新的C.参考这段代码: for (std::vectorint::iterator it = myvector.begin() ; it != myvector.end(); ++it)std::cout ' ' *it;std::cout 'n'; 特别是在初始化迭代器和结束条件时.向量中的每个元素是否都有唯一的内存地址指向?或者迭代器的工作方式与
相当新的C.参考这段代码:
for (std::vector<int>::iterator it = myvector.begin() ; it != myvector.end(); ++it) std::cout << ' ' << *it; std::cout << 'n'; 特别是在初始化迭代器和结束条件时.向量中的每个元素是否都有唯一的内存地址指向?或者迭代器的工作方式与指针不同? 解决方法
虽然迭代器不一定是指针(尽管对于std :: vectors,大多数非调试实现都将它们实现为指针周围的瘦包装),但std :: vector是
guaranteed,以使其元素在内存中连续.这意味着YES,每个元素都有一个独特的内存位置.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |