如何在没有调用函数的情况下在所有函数上使用mat img?

时间:2015-10-11 11:56:03

标签: opencv

我想使用 Mat img = imread(“Nature.jpg”)使用的图像; 到程序中所有函数的内部,我认为,这可以实现为 Mat img 定义了这样的易变量,这是有效的吗?

1 个答案:

答案 0 :(得分:1)

我不建议将变量cv :: Mat声明为volatile,因为如果你这样做肯定需要从不同的线程更新这个变量,如果你想要的是使用类型cv :: Mat global然后在任何函数或类之外键入以下行

cv::Mat img;

现在,如果你想从另一个文件中使用这个变量,你必须写:

extern cv::Mat img;

现在,如果您需要访问多线程,我建议您查找有关互斥和多线程编程的指南,因为如果两个或多个函数同时访问变量img,您的程序将在运行时因分段违规而失败。