关于c++中为什么要使用extern “C”
在编写c++代码时有时候我们看到有人会使用如下的语法
extern "C" {
void foo();
}
使用该语法的目的在于使一个c++中的函数名使用c的连接方式。因为在c中是不存在函数的重载的,而在c++中存在,所以在c++中我们就不能单独使用函数名来唯一确定一个函数,还需要加上它的参数列表。
所以在编译时,c++的编译器会将你的函数名破坏,加入参数信息,而在c中这是不行的,这就需要你使用extern “C”, 来保证用c的方式生命函数,这样在你使用c相关的库是就不会出现错误了