在C++中,我有以下代码。我试图将存储在矢量中的数据复制到矩阵(在矢量内)。我试图这样做:将向量<float>中的数据复制到向量<Mat>(Opencv/C++)
Vector<float> vec;
// Let's imagine that vec contains 10 float values: {1,2,3 ...., 10}
// I'd like to copy those numbers into a Mat variable
Vector<Mat> myMats;
myMats.push_back(Mat(2,5,CV_32FC1,&vec.front()));
它的工作原理。但是,当修改矢量“vec”上的内容并尝试将其插入到我的向量Mat中的另一个位置时,它们都获得最后一次“push_back”操作的值。 “myMats”中的所有条目都被最后一个条目覆盖。我该如何解决这个问题?
我认为问题是使用参考(“&”),每次修改地址,在哪里看。
你为什么推一个临时对象的地址? –
是的,只是编辑了我提到的问题。我第一次在这样的情况下工作,然后我不得不修改代码,但我不知道该怎么做。 – karl71
另外,我不清楚你想要做什么。请描述现在正在发生的事情以及你想达到的目标。 –