【发布时间】:2015-04-18 05:08:44
【问题描述】:
将我的二维数组转换为二维向量后(由于我听到的所有赞美),我的程序几乎立即中断,经过一些测试,当程序尝试使用向量执行函数时似乎会发生这种情况元素。我做了一些简化的源代码,也有错误:
#include <iostream>
#include <vector>
using namespace std;
class Dog
{
private:
int mass, size;
public:
void setMass(int);
void setSize(int);
int getMass();
int getSize();
};
void Dog::setMass(int newMass) {mass = newMass;}
void Dog::setSize(int newSize) {size = newSize;}
int Dog::getMass() {return mass;}
int Dog::getSize() {return size;}
int main()
{
vector <vector<Dog*> > dogs(10, vector<Dog*> (10));
dogs[0][0]->setMass(10);
dogs[0][0]->setSize(5);
return 0;
}
我还有一个指向 Ideone 的链接,所以更容易测试(以及我测试代码的地方)http://ideone.com/e.js/mqVuv3
【问题讨论】:
-
你遇到了什么错误?
-
@DanielBocksteger 根据 Ideone 的说法,我得到一个运行时错误,并且 code::blocks 什么也没说,只是进程返回了一个非常长的数字
标签: c++ class vector 2d-vector