error C2491: 不允许 dllimport 函数 的定义

转载:https://blog.csdn.net/gaofeidongdong/article/details/7781345

在工程属性中 预编译宏中加上 DLL_EXPORT
为了减少使用dll时候的设置或者代码编写,把dll.h修改一下:
#ifndef DLL_EXPORT
#define DECLDIR __declspec(dllimport)
#else
#define DECLDIR __declspec(dllexport)
#endif
dll实现代码:
#include "stdafx.h"
#include <iostream>
#define DLL_EXPORT //先定义宏
#include "dll.h"//这个头文件必须在#define DLL_EXPORT后面
extern "C"{
DECLDIR int Add( int a, int b )
{
return( a + b );
}
DECLDIR void Function( void )
{
std::cout << "DLL Called!" << std::endl;
}
}
这样编译后,使用dll的工程中就不需要定义和dll相关的宏了
————————————————
版权声明:本文为CSDN博主「fisher」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/gaofeidongdong/article/details/7781345

原文地址:https://www.cnblogs.com/MCSFX/p/13074093.html