第1章 C+ +语言的发展 【考点一】 C+ +语言的发展" r: ?; G2 ?8 ^ T- X
C+ +起源于C语言。1980年贝尔实验室的Bjarne Stroustrup和他的同事们开始对C语言进行改进和扩充,把Simula 67(一种早期的面向对象语言)中类的概念引入到C语言,并将改进后的C语言称为"带类的C"(C with class)。1983年夏,"带类的C"被正式命名为"C+ +",并于同年7月首次对外发表。
& ^$ r! ]. k! g9 V5 d 【考点二】 C+ +语言的特点+ R6 r, M7 ?, S, q
1.C+ +是一种面向对象的程序设计语言(1)抽象数据类型。(2)封装和信息隐藏。(3)以继承和派生方式实现程序的重用。(4)以运算符重载和虚函数来实现多态性。(5)以模板来实现类型的参数化。
3 v! R \5 e( H) _, b, p5 k7 I 2.C+ +是程序员和软件开发者在实践中创造的C+ +往往从编写实际程序的角度出发,为程序员提供了各种实用、灵活、高效的语言特性。
e! D [0 _1 s 3.C+ +是C语言的超集能够很好地兼容C语言正是C+ +取得成功的原因之一,这是因为:(1)C+ +继承了C语言简明、高效、灵活等众多优点。(2)以前使用C语言编写的大批软件可以不加任何修改,直接在C+ +开发环境下维护。(3)C语言程序员只需要学习C+ +扩充的新特性,就可以很快地使用C+ +编写程序。 , a3 x+ G) h4 E7 S" J( N3 T
【考点三】 面向对象程序设计C+ +是一种面向对象的程序设计语言,它充分支持面向对象思想中的三个主要特征是:4 G5 a3 s. J6 g) Z$ |2 N
1.封装性封装性是指将数据和算法捆绑成一个整体,这个整体就是对象,描述对象的数据被封装在其内部。如果需要存取数据,可以通过对象提供的算法来进行操作,而无需知道对象内部的数据是如何表示和存储的。这种思想被称为信息隐藏。2.继承性继承性是指一种事物保留了另一种事物的全部特征,并且具有自身的独有特征。C+ +语言采用继承来支持重用,程序可以在现有类型的基础上扩展功能来定义新类型。新类型是从现有类型中派生出来的,因此被称为派生类。5 n2 A' i3 ^6 T: g
3.多态性多态性是指当多种事物继承自一种事物时,同一种操作在它们之间表现出不同的行为。C+ +语言中使用函数重载、模板、虚函数等概念来支持多态性。C+ +语言主要包括面向过程和面向对象两部分内容。学习C+ +语言时,应该先学习其面向过程部分,再学习面向对象部分。 + o$ B: Z6 j$ Y1 k7 Z
【考点四】 C+ +语言的基本符号C+ +语言中的基本符号可以分为3类:
- ?% o$ Z( Z1 L, b9 Z8 F# N. K% p 1字母。包括大写英文字母和小写英文字母共52个符号。2数字3特殊符号。包括:+-*/=,_:;?\〓″〓′~|!#%&()[]{} ^<>和"空格"共30个符号。这三类符号共计92个,它们组成了C+ +语言的基本符号集合。
7 p8 `9 }2 W: r* G 【考点五】 C+ +语言的词汇/ K# x5 ?8 U8 p1 c0 I- ^
1.关键字关键字也称为保留字,它是由C+ +语言本身预先定义好的一类单词。, y3 v8 D8 |# b# K& R
表1ANSI C 标准规定的关键字
1 M* z h, X6 B+ C1 }1 h4 m- M auto break case char
; H6 y3 |5 l6 }6 n const continue default do" V* H# t& f) v9 | z$ Q& q
double else enum extern. V2 q8 K- I9 m+ q4 L5 H( i" y
float for goto if! m8 G/ i0 @8 t0 x& D" p/ M
int long register return
/ g/ i; y7 Z! p! ]* p5 F, y short signed sizeof static
& a* |: `1 q: x struct switch typedef union H. H) o0 ^; S `
unsigned void volatile while |