注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

昆明帆妈的博客

生活的点点滴滴,被我这样记录着。。。。

 
 
 

日志

 
 

【转载】声明和定义区别的理解  

2013-05-10 14:43:57|  分类: 工作 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
本文转载自蒋委员长《声明和定义区别的理解》

现在的C/C++标准都规定:在程序中使用一个实体名字之前,必须首先要给出这个名字作何解释及其属性,这就是声明。

定义本身起声明的作用,是声明的一种特殊情况。除了给出名字的解释以及属性之外,还给出其具体实现:对于常量来说,要指定其表示的值;对于变量来说,要为它代表的对象分配相应的内存空间;对于函数来说,要给出其函数体;对于自定义类型来说,要规定其成员构成,等等。

比如:int i=0;
是定义变量 i 的实现并对其进行初始化,是一种定义;既然是定义当然也是声明。因此也可以说它是“含初始化的声明”。初始化是建立在已知属性的基础上,否则无法进行初始化。

又比如:extern int i;
是声明不是定义。它告诉编译器有一个变量i是int型,也不用分配内存存储i的值。

所以,区分声明和定义记住这样下面一句话就行了:声明是让编译器知道,定义是让机器知道。


 

  评论这张
 
阅读(7)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017