【问题标题】:creating a DLL file using C++使用 C++ 创建 DLL 文件
【发布时间】:2017-11-07 18:40:29
【问题描述】:

我是 C/C++ 编程的新手,我需要创建一个 dll 文件,以便算法模型可以与调用它的另一个程序进行交互。我用 C 和 C++ 编写了一个带有函数原型和虚拟返回值的空函数,并分别在 gcc 和 g++ 中编译它们。从 C 文件生成的 dll 文件很容易与父程序集成并返回所需的输出。但是,对于 C++,程序说找不到 initialise 函数。两个文件中的代码结构如下:

void initialise (int a) {
   return 1;
}
void body (int b) {
   return 1;
}
void close () {
   return 1;
}

编译方法(分别使用mingw gcc和g++)

gcc -c test.c
gcc -shared -o test1.dll test.o

g++ -c test.c
g++ -shared -o test2.dll test.o

我需要 cpp 来继续我的项目,所以不能使用 c.如何使用 C 编译 dll 以消除此错误的发生?另请提及导致此问题的 C 和 C++ 之间的编译差异是什么?

【问题讨论】:

标签: c++ c dll


【解决方案1】:

尝试:extern "c" __declspec(dllimport)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-24
    • 1970-01-01
    • 2011-08-05
    相关资源
    最近更新 更多