windows版本

一、生成dll

1、新建源文件

myfunction.h



#ifndef MYFUNCTION_H
#define MYFUNCTION_H
#include <iostream>

class Myfunction
{
public:
Myfunction();
static void log(char info);
};

#endif // MYFUNCTION_H


myfunction.cpp



#include "myfunction.h"

Myfunction::Myfunction()
{

}

void Myfunction::log(char info)
{
std::cout << info;
}


2、编译

打开cmd,执行



g++ myfunction.cpp -I D:\work\CppSpace\Testdll  -shared -o myfunction.dll


-I D:\work\CppSpace\Testdll 如果不填则默认在当前路径查找依赖头文件

 是否需要使用-fPIC?暂未接触

3、生成dll

g++编译生成动态库并使用_ios

 

二、使用dll

1、将生成的myfunction.dll和myfunction.h放在独立文件夹里

g++编译生成动态库并使用_头文件_02

2、新建main.cpp



#include <iostream>
#include "myfunction.h"
int main(int argc, char *argv[])
{
std::cout << "main:" << std::endl;

Myfunction::log('c');
getchar();
return 0;
}


3、编译

打开cmd,输入



g++ myfunction.dll main.cpp -o my.exe


即可生成my.exe

g++编译生成动态库并使用_ios_03

4、双击exe测试

g++编译生成动态库并使用_html_04

 

 

 

linux版本

待学习




长风破浪会有时,直挂云帆济沧海!