关于 _cplusplus 的一些说明

来源:互联网 发布:中国人的劣根性知乎 编辑:程序博客网 时间:2024/05/09 08:10

编译器在编译过程会对一些函数,变量重命名:加上一些字符和符号。这种重命名的过程在编译器内部是可逆的,错误提示的代码为逆过程,即恢复命名。

因为存在这种重命名的过程,c++ 函数在提供给 c 函数使用的过程会出现一些问题。例如找不到相应的函数,未实现函数。


一些解决办法: _cplusplus

_cplusplus 标识c++编译器


#ifdef __cplusplus

ExternC

//声明定义的函数在编译的过程中不会被修改函数名称。

#endif


使用方法

1,在头文件里边使用

#ifdef __cplusplus

ExternC{

Int  functions(void *);

}


2,在调用头文件的时候使用

#ifdef __cplusplus

ExternC{

 

#includehead.h

}

#endif


更赞同方法1.理由:文件的使用不依赖外部设计实现。

具体很明显的使用区别尚未体会。欢迎补充。



0 0
原创粉丝点击