首先是新建一个工程,选择C++库,打开后是这样的:
然后输入新建的名称,下一步,记得勾选Qtcore那个(就是默认的那个),否则编译似乎不能通过。因为后面自动生成的.h文件里还有这个。
自动生成的有4个文件一个pro,一个cpp,一个XXX.h文件,一个XXX_global.h
可以检查下.pro里的类型是不是lib类型。
下面就可以在XXX.h文件里声明自己要写的函数,进行宏定义,#define一些用到的常量。
比如类名为Mm,那么
public:
int Mm::aa(int a,int b){
int c=a+b;
return c;
}
这样调用这个aa传回来的就是c的值了。
其中需要注意的是,构造函数和类同名,他不能有返回值。不能是int和void类型,都不正确。
所以需要有返回值的时候,函数名不能和类同名!之后我们还可以写别的函数。都放在这个类中。
函数的实现需要点开.cpp文件,cpp中专门写实现这些函数(方法)的代码。
下面说调用这个函数:
新建一个工程,注意在pro文件中需要将lib的目录和.so的目录加进去。
lib目录(就是.h文件所在目录):INCLUDEPATH +=/home/will/Projects/pluginTest/
.so目录为:LIBS += -L/home/will/Projects/build-mm-Desktop-Debug\
-lmm (一定不能少了这个,这个是库的名字l+类名)
如下图所示:在main.cpp中调用这个函数。
int main(){
Mm mm;//需要先新建这个对象
int c=mm::aa(2,5);//mm这个对象中有aa这个函数,这样就实现了调用。
printf("%d\n",c);
}
至此,就完成了整个过程!