相关疑难解决方法(0)

外部"C"是否应包含C++函数的声明或定义?

我在一个cpp文件中看到,它external "C" {...}包含了几个函数的定义.

https://isocpp.org/wiki/faq/mixing-c-and-cpp,我想extern "C"在cpp文件中使用的目的是使附带的C++函数可用于C程序.

链接中的示例显示仅extern "C"包含C++函数的声明,而不是它们的定义

只需声明C++函数extern"C"(在您的C++代码中)并调用它(从您的C或C++代码).例如:

    // C++ code:
    extern "C" void f(int);
    void f(int i)
    {
        // ...
    }
Run Code Online (Sandbox Code Playgroud)

我在开头提到的cpp文件看起来像:

    // C++ code:
    extern "C" {

    void f(int i)
    {
        // ...
    }

    void g(int i)
    {
        // ...
    }

    }
Run Code Online (Sandbox Code Playgroud)

是否应该extern "C"包含C++函数的声明或定义?如果是这样,为什么?

c c++

13
推荐指数
2
解决办法
1159
查看次数

标签 统计

c ×1

c++ ×1