《c++语言导学》——第3章 模 块 化 3.1 引言

第3章 模 块 化

引言

  • 分离编译
  • 命名空间
  • 错误处理
      异常;不变式;静态断言
  • 建议

3.1 引言

一个C++程序可能包含许多独立开发的部分,例如函数(见1.3节)、用户自定义类型(见第2章)、类层次(见4.5节)和模板(见第5章)等。因此构建C++程序的关键就是清晰地定义这些组成部分之间的交互关系。第一步也是最重要的一步是把某个部分的接口和实现分离开来。在语言的层面,C++使用声明来描述接口。声明(declaration)指定了使用某个函数或某种类型所需的所有内容。例如:

https://yqfile.alicdn.com/0c7fe2df526893ba5e79b13eebc15f0c90da6a68.png
" >

这里的关键点是函数体,即函数的定义(definition)位于“其他某处”。在此例中,我们可能也想让Vector的描述位于“其他某处”,不过,我们将稍后再介绍相关内容(抽象类型,见4.3节)。sqrt()的定义如下所示:

对于Vector来说,我们需要定义全部三个成员函数:

我们必须定义Vector的函数,但不必定义sqrt(),因为它是标准库的一部分。然而,这没什么本质区别:库其实就是一些“我们碰巧用到的其他代码”,编写这些代码用到的语言特性就是我们正在使用的那些。

时间: 2024-09-20 06:14:25

《c++语言导学》——第3章 模 块 化 3.1 引言的相关文章

《c++语言导学》—— 导读

前言 现在的C++仿佛进化成了一种新的语言.与C++98相比,C++11更易于我们清晰.简洁.直观地表达思想.而且编译器可以更好地检查程序中的错误,程序的运行速度也提高了. 就像其他任何一种现代编程语言一样,C++的规模庞大且提供的库异常丰富,值得程序员认真学习以便高效地利用.这本小册子的目的是让有经验的程序员快速了解现代C++语言,因此它几乎介绍了C++的全部核心功能和重要的标准库组件.读者花费几个小时就能读完本书,但是想必所有人都清楚,要想写出漂亮的C++程序绝非一日之功.好在本书的目的并非

《Java语言导学(原书第6版)》一一第2章 面向对象的编程概念 2.0

第2章The Java Tutorial: A Short Course on the Basics, Sixth Edition面向对象的编程概念如果没有用过面向对象的程序语言,编写Java程序之前一定要先学一些面向对象编程的基本概念.本章介绍对象.类.继承.接口和包等基本概念.每节都通过生活中的例子来解释这些基本概念,同时介绍Java程序语言的语法.2.1节关注对象的概念.对象是具有相关状态和行为的软件.软件对象经常用于建模生活中的对象.本节介绍对象的状态和行为的表示方式以及数据封装的概念,

《Java语言导学(原书第6版)》一第2章 面向对象的编程概念

第2章 面向对象的编程概念如果没有用过面向对象的程序语言,编写Java程序之前一定要先学一些面向对象编程的基本概念.本章介绍对象.类.继承.接口和包等基本概念.每节都通过生活中的例子来解释这些基本概念,同时介绍Java程序语言的语法.

《Java语言导学(原书第6版)》一一第1章 快速入门

第1章 The Java Tutorial: A Short Course on the Basics, Sixth Edition 快速入门 本章介绍Java程序语言的入门知识.1.1节概述Java技术,通过说明Java技术的功能及其如何简化编程讨论Java程序语言及其平台.1.2节引入"Hello World!"实例程序,主要描述创建该程序需要下载.安装和输入的内容,并说明在NetBeans IDE.Microsoft Windows.Solaris.Linux和OS X等平台上创

《Java语言导学(原书第6版)》一第1章 快速入门

第1章 快速入门 本章介绍Java程序语言的入门知识.1.1节概述Java技术,通过说明Java技术的功能及其如何简化编程讨论Java程序语言及其平台.1.2节引入"Hello World!"实例程序,主要描述创建该程序需要下载.安装和输入的内容,并说明在NetBeans IDE.Microsoft Windows.Solaris.Linux和OS X等平台上创建该程序的完整过程.1.3节详细讨论"Hello World!"实例程序的代码,包括源码注释.HelloW

《Java语言导学(原书第6版)》一一第3章 语言基础 3.0

第3章 The Java Tutorial: A Short Course on the Basics, Sixth Edition 语?言?基?础 前面已经介绍了对象的状态存储在字段中.然而,Java程序语言经常会使用变量(variable).3.1节讨论字段与变量的关系,介绍变量的命名规则和约定.基本的数据类型(主类型(primitive type).字符串和数组).默认值(default value)和字(literal). 3.2节介绍Java程序语言的运算符.介绍常用和不常用的运算符.

《c++语言导学》——第2章 用户自定义类型 2.1 引言

第2章 用户自定义类型 引言 结构 类 联合 枚举 建议 2.1 引言 我们把用基本类型(见1.5节).const修饰符(见1.7节)和声明运算符(见1.8节)构造出来的类型称为内置类型(built-in type).C++语言的内置类型及其操作非常丰富,不过相对来说更偏重底层编程.这些内置类型的优点是能够直接有效地展现出传统计算机硬件的特性,但是并不能向程序员提供便于书写高级应用程序的高层特性.为此,C++语言在充分利用内置类型和操作的基础上,提供了一套成熟的抽象机制(abstraction

《Java语言导学(原书第6版)》一第3章 语言基础

第3章 语言基础 前面已经介绍了对象的状态存储在字段中.然而,Java程序语言经常会使用变量(variable).3.1节讨论字段与变量的关系,介绍变量的命名规则和约定.基本的数据类型(主类型(primitive type).字符串和数组).默认值(default value)和字(literal). 3.2节介绍Java程序语言的运算符.介绍常用和不常用的运算符.所有讨论都包含代码实例,而且这些代码实例都可以编译和运行. 运算符用于构建表达式,以进行计算.表达式是语句的核心组件.语句往往被划分

《c++语言导学》——第1章 基 础 知 识1.1 引言

第1章 基 础 知 识 引言 程序 Hello,World! 函数 类型.变量和算术运算 作用域和生命周期 常量 指针.数组和引用 检验 建议 1.1 引言 本章简要介绍C++的符号系统.C++的存储和计算模型以及如何把代码组织成程序.这些语言特性支持C语言中绝大多数常见的编程模式,我们称之为面向过程的程序设计(procedural programming).