我没有收到任何错误消息,只是我的矢量没有填充。查看监视列表中的向量,不会复制任何内容。为什么是这样? 我试过两种方法。 第一个
std::vector<Point3D*> hitpoints;
local_hit_point = sr.local_hit_point; //local_hit_point class Point3D
hitpoints.push_back(local_hit_point);
我尝试使用指针的第二种方式
std::vector<Point3D*> hitpoints;
Point3D* hittingpoint_ptr = new Point3D;
local_hit_point = sr.local_hit_point;
hittingpoint_ptr = &local_hit_point;
hitpoints.push_back(hittingpoint_ptr);
我的代码中其他地方的矢量有效。我真的只是愚蠢,但我似乎无法弄清楚它为什么不起作用。
答案 0 :(得分:0)
我最好的猜测是你的调试器有问题..
第一个建议;
第二个建议;
答案 1 :(得分:0)
只是我的矢量没有填充。
它正在填充。然而
查看监视列表中的向量... 我使用了hitpoint.size()
函数/方法调用的结果(size()是一种方法)不会在visual studio监视列表中自动更新(因为你没有告诉你使用的os /编译器我不得不假设它是visual studio)。即如果你将函数调用输入监视列表,它将计算结果,但在手动刷新之前不会再次调用函数。而不是函数调用,将向量本身添加到监视列表中。