C++中操作vector时出现的赋值和初始化的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++中操作vector时出现的赋值和初始化的问题相关的知识,希望对你有一定的参考价值。
在vs2003平台下使用vector来建立动态数组如下:
vector<int>ColSum;
vector<int>Colp;
vector<int>Sp;
for(int x=0;x<maxX;x++)
ColSum.push_back(0);
Colp.push_back(0);
Sp.push_back(0);
我的理解是使用for语句对以上三个数组进行初始化,数组长度为maxX,不知道是否正确
另一个问题是,目前我的程序编译没有问题,但是在运行的时候发现会出错,设置断点后发现使用vector定义的数组没有被赋值,如把断点设在上面for语句之后观察局部变量有Colp的值为first=??? last=???,然后独立观察如Colp[0]的时候出现CXX0058:错误:未找到重载运算符。
个人觉得是没有赋值到数组里面去,但是又不知道错在哪里,求各位高手解答
抱歉,因为代码比较长所以希望各位大哥能留一下邮箱或者QQ方便交流,我个人觉得这个可能是vector的赋值的问题
没有代码确识不好判定,无代码,无真相。追问
请问vector要怎么初始化呢?还有,可不可以留下你的邮箱我把代码发给你帮忙看一下?
追答vived@vip.qq.com
你要初始化为什么啊,它只是个容器,你就往里添加东西就行了,到时候按照位置去读就完了
发给您了,多谢
追答我看了下,数组越界了。
参考技术A 这个循环是分别往三个vector里面push了 maxX个0第二个问题有没有代码 我运行一下试试追问
你好,我这个是用MFC作的,代码比较长,不大好贴上来,请问可以留下邮箱发给你吗?
以上是关于C++中操作vector时出现的赋值和初始化的问题的主要内容,如果未能解决你的问题,请参考以下文章
C++高手请进 数组可以整体赋值吗 比如我定义了b[2]=1,2 我可以直接a[2]=b[2]吗
尝试在 Python 中重写 C++ 代码时出现问题:删除地图中的项目和“vector.erase(vector.end())”