VS C/C++动态链接库的创建

1)这个头文件是要导出为DLL入口的头文件,想把哪个函数写成DLL的入口,就写入这个文件

#ifndef OUTFILE
#define OUTFILE

#ifdef __cplusplus
extern "C" {
#endif

int InsertWord(char *str);  //把这个函数写成DLL的入口函数

#ifdef __cplusplus
}
#endif

#endif

2)这个文件是入口函数的实现,要注意此文件一定要包含上面那个outfile.h,

#include "HashList.h"
#include "ELFHash.h"
#include <iostream>
#include "outfile.h"

using namespace std;

HashList ArrList[Arr_Length];
int InsertWord(char *str)
{  
	
	int Indextemp = ELFHash(str);
	int mark;
	
	mark = ArrList[Indextemp].Search(str);
	
	if(mark == 1)
		{
			ArrList[Indextemp].Insert(str);
		return 1;
		}
	
	else
	{
		return 0;
		
	}

}

3)def 文件 ,这个文件要添加到 属性->链接器->输入->模块定义文件 中 ( eg.   $(MSBuildProjectDirectory)\Primer_test.def)正面是def文件的一般格式。

LIBRARY Primer_test

EXPORTS
GetNeFormString @1
InitTagger @2
DeleteTagger @3



你可能感兴趣的:(c,dll,library)