最近在研究linux环境下完成动态链接库的调用,为后面的项目做准备,因为要做图像方面的处理,所以直接来一个包含opencv的动态链接库调用。
概念的东西后面在解释,直接开搞:
1、新建Function.cpp作为动态链接库,内容如下:
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
int F_sum(int a,int b)
{
int c=a+b;
printf("this sum is: %d\n",c);
return 0;
}
int S_F(int flag,Mat ImageMat)
{
namedWindow("ImageWindow");
switch(flag)
{
case 0:
printf("this is a false\n");
break;
case 1:
imshow("ImageWindow",ImageMat);
break;
}
return 0;
}
2、新建Function.h作为头文件,内容如下:
#include <opencv2/opencv.hpp>
using namespace cv;
int F_sum(int a,int b);
int S_F(int flag,Mat ImageMat);
3、新建main.cpp作为主函数,用于链接库的调用测试,内容如下:
#include <opencv2/opencv.hpp>
#include "Function.h"
using namespace cv;
using namespace std;
int main()
{