C函数声明'void msgBox(const char *,const char *)'与之前的声明冲突

时间:2013-07-10 03:48:25

标签: c++ compiler-errors mingw overloading

我收到错误: C函数的删除'void msgBox(const char *,const char *)'与我的DLL中的先前声明'void msgBox(const char *)'here 冲突,在MinGW中编译。为什么不接受我的声明?

#include <windows.h>

#define DLL_EXPORT __declspec(dllexport)

extern "C"
{

void DLL_EXPORT msgBox(const char* msgText);
void DLL_EXPORT msgBox(const char* msgText, const char* msgTitle);

}

1 个答案:

答案 0 :(得分:1)

具有两个具有C语言链接的同名函数是违法的。

7.5p6

  

最多一个具有特定名称的函数可以使用C语言   键。