手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>程序设计>C/C++>列表

第1章 文档结构

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

每个C /C程式通常分为两个文档。一个文档用于保存程式的声明(declaration),称为头文档。另一个文档用于保存程式的实现(implementation),称为定义(definition)文档。

C /C程式的头文档以“.h”为后缀,C程式的定义文档以“.c”为后缀,C 程式的定义文档通常以“.cpp”为后缀(也有一些系统以“.cc”或“.cxx”为后缀)。

1.1 版权和版本的声明版权和版本的声明位于头文档和定义文档的开头(参见示例1-1),主要内容有:
(1)版权信息。
(2)文档名称,标识符,摘要。
(3)当前版本号,作者/修改者,完成日期。
(4)版本历史信息。
/*
* Copyright (c) 2001,上海贝尔有限公司网络应用事业部
* All rights reserved.
*
* 文档名称:filename.h
* 文档标识:见配置管理计划书
* 摘 要:简要描述本文档的内容
*
* 当前版本:1.1
* 作 者:输入作者(或修改者)名字
* 完成日期:2001年7月20日
*
* 取代版本:1.0
* 原作者 :输入原作者(或修改者)名字
* 完成日期:2001年5月10日
*/
示例1-1 版权和版本的声明
1.2 头文档的结构
头文档由三部分内容组成:
(1)头文档开头处的版权和版本声明(参见示例1-1)。
(2)预处理块。
(3)函数和类结构声明等。
假设头文档名称为 graphics.h,头文档的结构参见示例1-2。
【规则1-2-1】为了防止头文档被重复引用,应当用ifndef/define/endif结构产生预处理块。
【规则1-2-2】用 #include 格式来引用标准库的头文档(编译器将从标准库目录开始搜索)。
【规则1-2-3】用 #include “filename.h” 格式来引用非标准库的头文档(编译器将从用户的工作目录开始搜索)。
【建议1-2-1】头文档中只存放“声明”而不存放“定义”

在C 语法中,类的成员函数能够在声明的同时被定义,并且自动成为内联函数。这虽然会带来书写上的方便,但却造成了风格不一致,弊大于利。建议将成员函数的定义和声明分开,不论该函数体有多么小。
【建议1-2-2】不提倡使用全局变量,尽量不要在头文档中出现象extern int value 这类声明。

// 版权和版本声明见示例1-1,此处省略。
#ifndef GRAPHICS_H // 防止graphics.h被重复引用
#define GRAPHICS_H
#include // 引用标准库的头文档

#include “myheader.h” // 引用非标准库的头文档

void Function1(…); // 全局函数声明

class Box // 类结构声明
{

};
#endif

示例1-2 C /C头文档的结构

1.3 定义文档的结构
定义文档有三部分内容:
(1)定义文档开头处的版权和版本声明(参见示例1-1)。
(2)对一些头文档的引用。
(3)程式的实现体(包括数据和代码)。
假设定义文档的名称为 graphics.cpp,定义文档的结构参见示例1-3。

// 版权和版本声明见示例1-1,此处省略。
#include “graphics.h” // 引用头文档

// 全局函数的实现体
void Function1(…)
{

}

// 类成员函数的实现体
void Box::Draw(…)
{

示例1-3 C /C定义文档的结构

1.4 头文档的作用早期的编程语言如Basic、Fortran没有头文档的概念,C /C语言的初学者虽然会用使用头文档,
但常常不明其理。这里对头文档的作用略作解释:

(1)通过头文档来调用库功能。在很多场合,源代码不便(或不准)向用户公开,只要向用户提供头文档和二进制的库即可。用户只需要按照头文档中的接口声明来调用库功能,而不必关心接口怎么实现的。编译器会从库中提取相应的代码。

(2)头文档能加强类型安全检查。假如某个接口被实现或被使用时,其方式和头文档中的声明不一致,编译器就会指出错误,这一简单的规则能大大减轻程式员调试、改错的负担。

1.5 目录结构
假如一个软件的头文档数目比较多(如超过十个),通常应将头文档和定义文档分别保存于不同的目录,以便于维护。

例如可将头文档保存于include目录,将定义文档保存于source目录(能够是多级目录)。

假如某些头文档是私有的,他不会被用户的程式直接引用,则没有必要公开其“声明”。为了加强信息隐藏,这些私有的头文档能够和定义文档存放于同一个目录。




文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

热点关注
IDC资讯 虚拟主机 域名注册 托管租用 vps主机 智能建站
网站运营 建站经验 策划盈利 搜索优化 网站推广 免费资源
网站联盟 联盟新闻 联盟介绍 联盟点评 网赚技巧
行业资讯 业界动态 搜索引擎 网络游戏 门户动态 电子商务 广告传媒
网络编程 Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术 Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷 Internet Explorer
网页制作 FrontPages Dreamweaver Javascript css photoshop fireworks Flash
程序设计 Java技术 C/C++ VB delphi
网络知识 网络协议 网络安全 网络管理 组网方案 Cisco技术
操作系统 Win2000 WinXP Win2003 Mac OS Linux FreeBSD
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 价格总览 | 资讯中心 | 友情链接 | 网站地图 | 招贤纳士 | RSS