extern 用法

Posted bzadhere

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了extern 用法相关的知识,希望对你有一定的参考价值。

1  修饰函数,用C函数的方式编译;方便c++代码调用该函数
#ifdef __cplusplus
extern "C" {
#endif

   Interface* create();

#ifdef __cplusplus
}
#endif


.....
#ifdef __cplusplus
extern "C" {
#endif

  Interface* create()
  {
     return new Interface(); 
   }

#ifdef __cplusplus
}
#endif

 

 
 
2  声明函数或者变量,在其他文件中定义;  extern int g_a = 1 在声明时定义,编译会重复声明错误
 
3  static 和 extern  不能同时使用。static修饰的全局变量声明与定义同时进行,只作用于本身编译单元。
 
4 const 和 extern, const作用于本编译模块,两个一起用可以作用于其他模块。
   extern const char g_str[];  // 声明
   const char g_str[] = "123456";  // 定义

以上是关于extern 用法的主要内容,如果未能解决你的问题,请参考以下文章

extern 用法

c_cpp 加载源图像固定用法(代码片段,不全)

extern的用法

命名空间 extern的用法 static全局变量

extern 用法,全局变量与头文件(重复定义)

C语言中 static 和 extern 的用法详解