对C++设计目标小结

开发 后端
C++在面向对象的设计上是在原来结构化程序设计方法基础上的一个质的飞跃,C++设计目标地体现了面向对象的各种特性。

在C++中的C++设计目标,就是要让C++语言既具有适合于系统程序设计的可适应性和高效性,C++中提供的抽象机制能够被应用于那些对效率和可适应性具有极高要求的程序设计任务之中。

C++程序设计语言是由来自AT&T Bell Laboratories的Bjarne Stroustrup(即本文作者)设计和实现的,它兼具Simula语言在组织与设计方面的特性以及适用于系统程序设计的C语言设施。

C++设计目标最初的版本被称作“带类的C(C with classes)”[Stroustrup,1980],在1980年被***次投入使用;当时它只支持系统程序设计(§3)和数据抽象技术(§4.1)。支持面向对象程序设计的语言设施在1983年被加入C++

之后,面向对象设计方法和面向对象程序设计技术就逐渐进入了C++领域。在1985年,C++***次投入商业市场[Stroustrup,1986][Stroustrup,1986b]。在1987至1989年间,支持范型程序设计的语言设施也被加进了C++[Ellis,1990][Stroustrup,1991]。

随着若干独立开发的C++实现产品的出现和广泛应用,正式的C++标准化工作在1990年启动。标准化工作由ANSI(American National Standard Institute)以及后来加入的ISO(International Standards Organization)负责。

1998年正式发布了C++语言的国际标准[C++,1998]。在标准化工作进展期间,标准委员会充当了一个重要的角色,其发布的C++标准之草案在正式标准发布之前,一直被作为过渡标准而存在。

而作为标准委员会中的积极分子,我是C++进一步发展工作中的主要参与者。与以前的C++语言版本相比,标准C++更接近我理想中的那个C++语言了。关于C++的设计和演化,在[Stroustrup,1994]、[Stroustrup,1996]和[Stroustrup,1997b]中有详细的叙述。至于标准化工作末期产生的C++语言定义,在[Stroustrup,1997]有详细叙述。

 C++设计目标C++ Design Aims)

C++设计目标,就是要让C++既具有适合于系统程序设计的C语言所具有的可适应性和高效性,又能在其程序组织结构方面具有像Simula那样的语言设施(Simula所支持的这种程序组织结构通常被称为面向对象程序设计风格)。

在设计的时候,还做了很大的努力,使得引借自Simula的高层次的程序设计技术能够应用于系统程序设计之中。这即是说,C++所提供的抽象机制能够被应用于那些对效率和可适应性具有极高要求的程序设计任务之中。

上述的C++设计目标可以小结如下:

对于要解决实际问题的程序员而言,C++设计目标变得更有乐趣,C++是一门通用目的的程序设计语言,它:

◆是一个更好的C;

◆支持数据抽象;

◆支持面向对象程序设计;

◆支持范型程序设计。

对范型程序设计的支持在C++设计的后期才被作为一个明确、独立的目标来实现。而在C++演化过程的大部分时间里,我一直把范型程序设计以及支持它的语言特性划归在“数据抽象”的大标题之下。

【编辑推荐】

  1. 简介学习C++总结之谈
  2. 对C++库函数进行学习探索总结笔记
  3. C++类库设计的基本构思与方法
  4. C++语言真的还有市场价值?
  5. C++类库设计的基本构思与方法
责任编辑:chenqingxiang 来源: wewill.cn
相关推荐

2010-01-26 13:36:27

C++设计

2011-05-31 17:59:48

C++

2011-04-11 09:23:27

设计目标原则C++

2010-01-11 17:34:37

C++语言

2010-01-15 19:34:25

C++设计

2010-01-28 10:01:28

C++的设计原则

2010-01-27 14:24:15

C++程序设计

2010-01-19 18:04:02

C++标准程序库

2010-01-15 15:52:18

CC++

2010-01-15 10:41:06

CC++

2010-01-25 18:19:17

C++特性

2010-01-18 16:27:26

C++语言

2010-01-25 18:19:17

C++特性

2010-01-25 18:19:17

C++特性

2010-01-25 10:54:18

C++设计

2010-01-25 18:26:44

CC++头文件

2010-01-28 10:07:52

C++手册

2010-01-28 14:04:35

C++链表

2010-01-13 18:47:53

C++教程

2010-01-20 17:48:07

C++ 函数重载
点赞
收藏

51CTO技术栈公众号