<>函数一
#include <opencv2/opencv.hpp> cv::Mat func(cv::Mat input) { input.setTo(0);
//input = cv::Mat::ones(4, 4, CV_32F); return input; } int main(int argc, char
const *argv[]) { cv::Mat imga = cv::imread("/home/ly/Pictures/11111111.jpg");
cv::Mat imgb = imga; cv::Mat imgc = imga.clone(); cv::Mat imgd = func(imga);
return 0; }
* imga 、imgb、imgd共享了矩阵头,当一个改变其他两个都改变。
* imgc深拷贝,完全独立,
<>函数二
#include <opencv2/opencv.hpp> cv::Mat func(cv::Mat input) { input =
cv::Mat::ones(4, 4, CV_32F); return input; } int main(int argc, char const
*argv[]) { cv::Mat imga = cv::imread("/home/ly/Pictures/11111111.jpg"); cv::Mat
imgb = imga; cv::Mat imgc = imga.clone(); cv::Mat imgd = func(imga); return 0; }
* imga、imgb共享局枕头,两个相互影响,由于在func中调用了构造函数,所以input会重新内存空间,那么imgd也独立
* imgc深拷贝,完全独立