C++基础之extern
来源:互联网 发布:逆转裁判4知乎 编辑:程序博客网 时间:2024/06/03 15:42
extern可以作用在全局变量或函数前,用来声明全局变量或函数,表示全局变量或函数在别的文件中已经定义,提示编译器遇到该全局变量或函数时在其它文件中寻找其定义。
1.extern的使用:
A.cpp
B.cpp
g++ A.cpp B.cpp -o test 编译,得到输出结果:2
2.extern 作用
1)全局变量或函数的引用共享
3.应用场景
在*.cpp文件中声明了一个全局的变量,这个全局的变量如果要被引用,就放在*.h中并用extern来声明
4.extern "C"的引入
1)背景
C++环境下使用C函数的时候,常常会出现编译器无法找到模块中C函数的定义,从而导致链接失败
2)原因
C++语言在编译的时候为了解决函数多态问题,会将函数名与函数参数结合起来生成一个中间的函数名称,但C语言不会,因此使用C++编译器编译C语言函数,会按照C++的规范来生成中间函数名称,导致链接时找不到函数
3)引入extern "C"
告诉编译器,在生成中间文件时,不要对该部分函数名称做修饰,而是生成符合C语言规则的中间函数名称
0 0
- C++基础之extern “C”的作用
- C++基础之extern
- C语言之extern
- C/C++之extern
- C++秘密之extern "C"
- c语言关键字之 extern
- C++学习之extern "C"
- C/C++关键字之extern
- C语言用法之extern
- 面试之C++(1):extern及extern “C”用法
- 面试之C++:extern及extern “C”用法
- 黑马程序员_iOS开发C语言基础之关键字typedef、static、extern使用
- C语言基础之类型定义 typedef、static和extern及递归
- C语言基础五_static和extern
- C语言学习之extern "C"
- C/C++混编之 extern "C"
- 【C++基础之七】extern关键字
- iOS基础之define,const,extern,static
- php实现摇一摇点名程序
- 2012河南省ACM现场赛正赛题解
- 概率统计随记(显著性检验 置信区间等)
- java get请求中文乱码
- 《C语言及程序设计》实践参考——输出小星星(之3)
- C++基础之extern
- The Dragon and the knights
- svn不能添加.a文件的解决方法
- static inline volatile的作用
- hdu 1058 Humble Numbers
- 《C语言及程序设计》实践参考——输出小星星(全解)
- 《C语言及程序设计》实践参考——利用循环求和
- Git与Repo入门
- Android中资源文件的详解和android中的单位介绍