社区
C++ 语言
帖子详情
extern作用?
C加嘉
2014-03-16 11:20:05
《C++Primer》第四版
2.3.5 声明和定义
声明用于向程序表明变量的类型和名字。定义也是声明:当定义变量时我们声明了它的类型和名字。可以通过使用extern关键字声明变量名而不定义它。不定义变量的声明包括对象名,对象类型和对象类型前的关键字extern。
这句话是什么意思?
给个实例!
...全文
83
3
打赏
收藏
extern作用?
《C++Primer》第四版 2.3.5 声明和定义 声明用于向程序表明变量的类型和名字。定义也是声明:当定义变量时我们声明了它的类型和名字。可以通过使用extern关键字声明变量名而不定义它。不定义变量的声明包括对象名,对象类型和对象类型前的关键字extern。 这句话是什么意思? 给个实例!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
C加嘉
2014-03-16
打赏
举报
回复
lovesmiles: 快滚,别污染了这个贴!
luotuo44
2014-03-16
打赏
举报
回复
要先明白声明和定义一个变量的区别。可以这样去理解:声明一个变量就是告诉编译器,存在这样一个变量。定义一个变量则不仅告诉编译器有这个一个变量,还要求编译器为其分配存储空间。 为什么会有这两个东西呢。这要从使用说起。假如有两个源文件,他们都要使用到一个变量int g_a = 3; 那么初学者的解决办法是把这个变量的定义放到一个头文件里面,然后让两个源文件去包含之。这样,编译器在编译每个源文件时,会为每个变量分配存储空间。这时g_a就会被分配两个不同的存储空间。不用说,这里会出现一个问题:当使用到g_a变量时,究竟是使用哪个存储空间的g_a呢? C语言对于这种问题的解决方案是:声明一个变量不会分配存储空间,定义则会。平时我们使用的int a = 0都是定义。而使用extern则告诉编译器这个是声明。 可以用extern来解决上面提到的那个问题。在一个源文件定义g_a。即int g_a = 3; 在另外一个源文件里面声明g_a。使用extern int g_a;
勤奋的小游侠
2014-03-16
打赏
举报
回复
http://blog.csdn.net/sjxbf/article/details/6310150
仔细看完这个blog。大神。
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键字的
作用
extern
关键
面试题:C++
extern
作用
?
在C++中,关键字
extern
可以用于声明变量或者函数是在别处定义的。简单来说,关键字
extern
用来告诉编译器一个名称的实际位置详细信息,以便在其他文件中使用该变量或函数。
【C\C++】
extern
关键字在 C/C++ 中的深入解析
本文深入解析C/C++中的
extern
关键字,揭示其管理程序链接性和可见性的核心
作用
。
extern
主要实现三大功能:声明外部链接性以共享跨文件变量/函数,解决全局标识的可见性问题,以及通过
extern
"C"实现C++与C的兼容交互。文章详细剖析了变量声明中的
extern
用法(包括常量特例)、函数声明场景,并通过代码示例和图表对比说明其应用。同时指出C++17引入的inline变量作为现代替代方案。掌握
extern
的正确使用是提升代码组织性、可维护性和跨平台能力的关键技能。
C语言.为什么要用
extern
声明?
全局变量和函数的储存类型为
extern
,即
作用
域为本项目有效,但在其他文件使用时为什么还要使用
extern
声明呢,原因如下: 现代编译器一般采用按文件编译的方式,因此在编译时,各个文件中定义的全局变量是互相不透明的。也就是说,在编译时,全局变量的可见域限制在文件内部。 下面举一个简单的例子: 创建一个工程,里面含有A.cpp和B.cpp两个简单的C++源文件: //A.cpp int i; ...
extern
的
作用
用#include可以包含其他头文件中变量、函数的声明,为什么还要
extern
关键字? 如果我想引用一个全局变量或函数a,我只要直接在源文件中包含 #include<xxx.h> (xxx.h包含了a的声明)不就可以了么,为什么还要用
extern
呢? 这个问题一直也是似是而非的困扰着我许久,经过实践和查找资料,有如下总结: 一、头文件 首先说下头文件,其实头文件对计...
C++ 语言
65,208
社区成员
250,517
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章