浅谈C++中的头文件与声明、定义的两个问题

来源:互联网 发布:织梦云代挂源码 编辑:程序博客网 时间:2024/04/29 03:44

l        引言

C++中,变量、对象、函数都需要声明,使用之前需要定义,本文针对初学者在此方面经常忽略但又很重要的问题给出了解释,并提供了此方面良好的编程风格。

由于大家都对局部变量的定义与使用十分熟悉,所以在此主要总结本人认为两点应该注意的问题:
   1.
头文件与声明的关系
   2.
符号常量与inline函数的声明

l        讲解

首先,头文件为所向extern 对象声明函数声明以及inline 函数定义提供了一个集中的位置。

头文件提供了两个安全保证:第一,保证所有文件都包含同一个全局对象或函数的同一份声明;第二,如果需要修改声明,则只需改变一个头文件从而不至于再发生只修改了某一个特殊的文件中的声明。如果应用程序有很大的头文件,则使用预编译头文件而不是普通头文件可以大大降低应用程序的编译时间。

其次,头文件不应该含有非inline 函数或对象的定义。因为如果这些定义在同一程序的两个或多个文件中被包含就会产生重复定义的编译错误。

但是,常量和inline 函数却可以违反这条规则,因为常量和inline 函数可以被定义多次,而归根到底是因为编译器在编译期间要将常量和inline函数展开的原因。

原创粉丝点击