分类: C/C++
2007-08-04 19:51:37
例如,假设某个函数的定义为: void foo( int x, int y ); 该函数被C编译器编译后在符号库中的名字为_foo,而C++编译器则会产生像 _foo_int_int 之类的名字(包含了函数名、函数参数数量及类型信息, C++就是靠这种机制来实现函数重载的)
假如函数add由C语言实现的文件,而在另一个用C++写的文件引用此函数需要添加以下语句: extern "C" int add(int x, int y);
假如函数add由C++语言实现的文件, 在另一个用C写的文件引用此函数需添加: extern "C" int add(int x, int y); ( C++文件 ) extern int add(int x, int y); ( C文件 )