【问题标题】:Calling a function inside DLL在 DLL 中调用函数
【发布时间】:2016-01-06 05:02:30
【问题描述】:

所有,

我有一个要从中导出函数的 DLL。源代码只有一个 C++ 文件。

事实证明,我需要向该源 C++ 文件添加一个函数,并从导出的函数中调用该函数。不幸的是 MSVC 2010 抛出错误:

extern "C" declspec(__dllexport) ExportedFunc()
{
    int result = Foo();
}

int Foo();

Foo(): 未找到标识符。

我试图导出 Foo() 函数,但它没有改变任何东西。

修复它的最佳方法是什么?

谢谢。

【问题讨论】:

标签: c++ function export


【解决方案1】:

我认为@Captain 指出了可能的错误。我将添加一些可能有助于您更好地处理链接的要点。

分别了解编译器和链接器错误很有用。您可以使用 -c 标志编译客户端代码,该标志只会给出来自编译器的错误,其中包括未找到的标识符。这些错误与您的库无关,根本不需要该库。清除这些错误后,在不使用 -c 标志的情况下进行编译(您可以使用使用 -c 标志而不是 .cpp 生成的 .o 目标文件)和您的库来链接并生成可执行文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-05
    • 1970-01-01
    相关资源
    最近更新 更多