读书频道 > 网站 > 网页设计 > 大规模C++程序设计
1.1.1 声明和定义
15-04-24    下载编辑
收藏    我要投稿   

本文所属图书 > 大规模C++程序设计

《大规模C++程序设计》由世界级软件开发大师John Lakos亲笔撰写,是C++程序设计领域最有影响力的著作之一。作者结合自己多年从事大规模C++项目的开发经验,详细介绍了大规模C++程序设计涉及的一系列概念、理论、立即去当当网订购

一个声明就是一个定义,除非:

它声明了一个没有具体说明函数体的函数;

它包含一个extern说明符,并且没有初始化程序或函数体;

它是一个类定义内的静态类数据成员的声明;

它是一个类名的声明;

它是一个typedef声明。

一个定义就是一个声明,除非:

它定义了一个静态类数据成员;

它定义了一个non-inline成员函数。

一个声明将一个名字引入到一个程序中;一个定义提供了一个实体(例如,类型、实例、函数)在一个程序中的唯一描述。

一个声明将一个名字引入作用域。在C++中,声明和定义的区别在于:在一个给定的作用域中重复一个声明是合法的;相比之下,在程序中使用的每个实体(例如,类、对象、枚举器、函数等)必须只有一个定义。例如:


 

以上都是声明,在单个作用域内可以重复多次。另一方面,下面这些在文件作用域中的声明也是定义,因此在一个给定的作用域内不能出现超过一次,否则就会触发一个编译时错误:


 

我们应该注意到,函数和静态数据成员声明是例外。它们虽然没有定义,但是在一个类的定义中也不能重复:


 

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站