C++ 我的c++;代码返回3(在抛出bad_alloc的实例后)
我的代码返回3,即使一切似乎都是正确的。它以前返回255,我重新安排了一下,现在返回3。它还表示“在抛出'std::bad_alloc'实例后终止调用”。 我在谷歌上查过,但找不到任何解决办法。知道为什么会这样吗C++ 我的c++;代码返回3(在抛出bad_alloc的实例后),c++,vector,return,bad-alloc,C++,Vector,Return,Bad Alloc,我的代码返回3,即使一切似乎都是正确的。它以前返回255,我重新安排了一下,现在返回3。它还表示“在抛出'std::bad_alloc'实例后终止调用”。 我在谷歌上查过,但找不到任何解决办法。知道为什么会这样吗 #包括 #包括 使用名称空间std; 标准::向量计算点(双pct[]{ 双pctfinal[2]; 双xv=pct[0]; 双yv=pct[1]; 双zv=pct[2]; 双精度=.02; 双xk=1; 双yk=1; 双zk=-2; cout=0) { 图像[pcteFinal[i]
#包括
#包括
使用名称空间std;
标准::向量计算点(双pct[]{
双pctfinal[2];
双xv=pct[0];
双yv=pct[1];
双zv=pct[2];
双精度=.02;
双xk=1;
双yk=1;
双zk=-2;
cout=0)
{
图像[pcteFinal[i][0][pcteFinal[i][1]]='#';
}
}
}
对于(int y=0;y<10;y++){
对于(int x=0;x<20;x++){
我不知道它应该做什么,但我可以看到一个似乎有效的输出。您可以附加一个调试器并查看它的故障位置。最后第二组(嵌套)循环执行image[pcteFinal[i][0][pcteFinal[i][1]]='#'
。但是图像
具有有效的维度10
和20
,但是检查(在两个中如果
)语句不能正确地确保维度是有效的。请仔细查看那些if
语句中的所有检查-这两个语句中都有简单的打字错误。如果您使用了struct Punct{int x,y;}
而不是两个元素向量,则很有可能仅名称就无法实现此错误。