如何在函数内访问Mat类型的参数变量名

时间:2015-10-30 10:22:15

标签: c++ function variables opencv parameters

我有一个小问题。我想在C ++中获取Mat类型参数的变量名。

int main(){
    Mat cat = imread("/cat.jpg", CV_LOAD_IMAGE_GRAYSCALE);  
    function(cat);

} 

void function(Mat& image){  
    Mat img;  
    imwrite("/imageOf" << **What to write here?** << ".jpg", img);  

}

对于上面这个例子,我希望我保存的文件名为 imageOfcat.jpg

如何访问参数的变量名?

1 个答案:

答案 0 :(得分:1)

您无法从function中访问变量的名称。 相反,您可以将字符串作为第二个参数传递:

void function(Mat& image, const std::string& name)
{  
    Mat img;  
    imwrite(std::string("imageOf" + name + ".jpg"), img);  

}

int main()
{
    Mat cat = imread("cat.jpg", CV_LOAD_IMAGE_GRAYSCALE);  
    function(cat, "cat");
}