C++ 一次将所有值分配给OpenCv矩阵

C++ 一次将所有值分配给OpenCv矩阵,c++,opencv,mat,C++,Opencv,Mat,我只想将矩阵的元素设置为一个特定的值,而不需要进行深层甚至浅层复制 据我所知 myMat = Mat::ones(rows, cols, CV_32SC1)*10; 将在磁盘上为新矩阵分配空间(本例中为相同的数据类型和维度),设置值,释放旧数据,然后使myMat指向新数据。 反而 将只将值设置为原始数据,而不进行新的分配和发布。 相当于 myMat.setTo(10); 这又与旧式风格相对应: cvSet(myMat, cvScalar(0)); 我在某些方面错了吗?除了最后一个cvSca

我只想将矩阵的元素设置为一个特定的值,而不需要进行深层甚至浅层复制

据我所知

myMat = Mat::ones(rows, cols, CV_32SC1)*10;
将在磁盘上为新矩阵分配空间(本例中为相同的数据类型和维度),设置值,释放旧数据,然后使myMat指向新数据。 反而

将只将值设置为原始数据,而不进行新的分配和发布。 相当于

myMat.setTo(10);
这又与旧式风格相对应:

cvSet(myMat, cvScalar(0));

我在某些方面错了吗?

除了最后一个
cvScalar(\u10)
之外,你是对的。这是唯一的问题?是的,但对我来说很重要。非常感谢。
cvSet(myMat, cvScalar(0));