如何解决std::vector::resize() 与 std::vector::reserve()?
开发过程中遇到std::vector::resize() 与 std::vector::reserve()的问题如何解决?下面主要结合日常开发的经验,给出你关于std::vector::resize() 与 std::vector::reserve()的解决方法建议,希望对你解决std::vector::resize() 与 std::vector::reserve()有所启发或帮助;问题描述
这篇文章的评论部分有一个关于使用 std::vector::reserve 的帖子() vs. std::vector::resize().
这是原始代码:
void MyClass::my_method() { my_member.reserve(n_dim); for(int k = 0 ; k < n_dim ; k++ ) my_member[k] = k ; }
我认为要在vector中写入元素,正确的做法是调用std::vector::resize(),不是 std::vector::reserve().
事实上,以下测试代码在 VS2010 SP1 的调试版本中崩溃":
#include <vector> using namespace std; int main() { vector<int> v; v.reserve(10); v[5] = 2; return 0; }
我是对的,还是错的?VS2010 SP1 是对的,还是错的?
尚未找到解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)