c++引用传值的问题,关于&的用法不太懂,下面代码cv::calcHist第一个参数为什么用&,而cv::cvtColor不用
答案:1 悬赏:60 手机版
解决时间 2021-01-27 02:08
- 提问者网友:浩歌待明月
- 2021-01-26 20:05
c++引用传值的问题,关于&的用法不太懂,下面代码cv::calcHist第一个参数为什么用&,而cv::cvtColor不用
最佳答案
- 五星知识达人网友:一袍清酒付
- 2021-01-26 20:32
这就要看函数原型了·~
一个传递值,一个传递值的地址。
原型中使用&表示这个参数传递本身。//这个函数原型
而在函数定义内使用函数调用,则表示传递地址。//这个函数调用
&在原型中和函数调用中的意思不是一样的·
cv::MatND getHistogram(const cv::Mat &image) //这个表示参数为引用类型,这是函数定义原型
cv::cvtColor(image, hue, CV_BGR2HSV); //这个是函数调用,函数的第一个参数的类型是 cv::Mat
cv::calcHist(&image, 1, channels, cv::Mat(), hist, 1, histSize, ranges);
//也是函数调用,第一个参数类型是 cv::Mat *
一个传递值,一个传递值的地址。
原型中使用&表示这个参数传递本身。//这个函数原型
而在函数定义内使用函数调用,则表示传递地址。//这个函数调用
&在原型中和函数调用中的意思不是一样的·
cv::MatND getHistogram(const cv::Mat &image) //这个表示参数为引用类型,这是函数定义原型
cv::cvtColor(image, hue, CV_BGR2HSV); //这个是函数调用,函数的第一个参数的类型是 cv::Mat
cv::calcHist(&image, 1, channels, cv::Mat(), hist, 1, histSize, ranges);
//也是函数调用,第一个参数类型是 cv::Mat *
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯