`
djsl6071
  • 浏览: 593395 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

【C++概述】

阅读更多

目录

C++概述】

【子语言】

【语言发展】

C++的设计原则】

C++Hello World程序】

C++程序员的数量】

C++语言的应用】

C++编程技巧】

C++的集成开发环境】

C++著作】

  • C++的集成开发环境】

C++概述】

  C++C语言这个词在中国大陆的程序员圈子中通常被读做“C加加”,而西方的程序员通常读做“C plus plus”,它是一种使用非常广泛的计算机编程语言。C++是一种静态数据类型检查的,支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、制作图标等等泛型程序设计等多种程序设计风格。

  美国AT&T贝尔实验室的本贾尼·斯特劳斯特卢普(Bjarne Stroustrup)博士在20世纪80年代初期发明并实现了C++(最初这种语言被称作“C with Classes”)。一开始C++是作为C语言的增强版出现的,从给C语言增加类开始,不断的增加新特性。虚函数virtual function)、运算符重载operator overloading)、多重继承multiple inheritance)、模板template)、异常(exception)、RTTI、名字空间(name space)逐渐被加入标准。1998年国际标准组织(ISO)颁布了C++程序设计语言的国际标准ISO/IEC 14882-1998C++是具有国际标准的编程语言,通常称作ANSI/ISO C++1998年是C++标准委员会成立的第一年,以后每5年视实际需要更新一次标准,下一次标准更新将是在2009年,目前我们一般称该标准C++0x。遗憾的是,由于C++语言过于复杂,以及他经历了长年的演变,直到现在(2004年)只有少数几个编译器完全符合这个标准(这么说也是不完全正确的,事实上,至今为止没有任何一款编译器完全支持ISO C++)

  另外,就目前学习C++而言,可以认为他是一门独立的语言;他并不依赖C语言,我们可以完全不学C语言,而直接学习C++。根据《C++编程思想》(Thinking in C++)一书所评述的,C++C的效率往往相差在正负5%之间。所以有人认为在大多数场合C++ 完全可以取代C语言(然而我们在单片机等需要谨慎利用空间、直接操作硬件的地方还是要使用C语言)

【子语言】

  根据Effective C++第三版第一条款的描述,现在C++由以下四个“子语言”组成:

  1C子语言。C++支持C语言的几乎全部功能,在语法上与C语言仅有极微妙的差别(如括号表达式的左右值性,具体请参考C++标准文献)

  2面向对象的C++C++首先作为一门面向对象的语言而闻名,这个特点在这里不再详述。

  3泛型编程语言。C++强大(但容易失控的)模板功能使它能在编译期完成许多工作,从而大大提高运行期效率。

  4STLC++标准模板库)。随着STL的不断发展,它已经逐渐成为C++程序设计中不可或缺的部分,其效率可能比一般的naive代码低些,但是其安全性与规范性使它大受欢迎。

【语言发展】

  C++语言发展大概可以分为三个阶段:第一阶段80年代到1995。这一阶段C++语言基本上是传统类型上的面向对象语言,并且凭借着接近C语言的效率,在工业界使用的开发语言中占据了相当大份额;第二阶段1995年到2000年,这一阶段由于标准模板库(STL)和后来的Boost等程序库的出现,泛型程序设计在C++中占据了越来越多的比重性。当然,同时由于JavaC#等语言的出现和硬件价格的大规模下降,C++受到了一定的冲击;第三阶段2000至今,由于以LokiMPL等程序库为代表的产生式编程和模板元编程的出现,C++出现了发展历史上又一个新的高峰,这些新技术的出现以及和原有技术的融合,使C++已经成为当今主流程序设计语言中最复杂的一员。

C++的设计原则】

  • C++设计成静态类型、和C同样高效且可移植的多用途程序设计语言。

  • C++设计成直接的和广泛的支援多种程序设计风格(程序化程序设计、资料抽象化、面向对象程序设计、泛型程序设计)。

  • C++设计成给程序设计者更多的选择,即使可能导致程序设计者选择错误。

  • C++设计成尽可能与C兼容,籍此提供一个从CC++的平滑过渡。

  • C++避免平台限定或没有普遍用途的特性。

  • C++不使用会带来额外开销的特性。

  • C++设计成无需复杂的程序设计环境。

  出于保证语言的简洁和运行高效等方面的考虑,C++的很多特性都是以库(如STL)或其他的形式提供的,而没有直接添加到语言本身里。关于此类话题,C++之父的《C++语言的设计和演化》 里做了详尽的陈述。

C++Hello World程序】

  在使用兼容C89标准(也称为ANSI C)的编译器时,下面这个程序显示“Hello, world!”然后结束运行:

  (事实上这并不是符合98标准[ISO C++]C++程序,而且在多数编译器上这个程序也不能运行,若要在比较旧的编译器上编译该程序,应将iostream改为iostream.h

  #include <iostream>

  int main()

  {

  printf("Hello, world!\n");

  return 0;

  }

  在使用兼容C++99标准(ISO/IEC 14882-1998)的编译器时,下面的程序也是可以的:

  #include <iostream>

  

分享到:
评论

相关推荐

    【C++学习笔记】01_C++概述

    "C++概述和面向对象程序设计" C++概述 C++是一门优秀的通用程序设计语言,它是以C语言为基础扩充、发展起来的。C++语言保存了C语言的紧凑、灵活、搞笑和移植性好的优点,又吸收了其他程序设计语言的优秀特质。C++...

    语言C/C++概述

    ### 语言C/C++概述 #### 一、C/C++语言基本语法介绍 本文旨在提供一个全面的C/C++知识框架,帮助读者更好地理解和掌握这两种编程语言的核心概念。虽然C和C++在很多方面相似,但它们各自拥有独特的特性和应用领域。...

    【C++】C++概述.docx

    C++概述 C++是一种高级程序设计语言,具有广泛的应用领域和强大的编程能力。本文将从程序设计语言、算法、算法特点、算法表示方法、C++程序开发的一般过程等方面对C++进行概述。 一、程序设计语言 程序设计语言是...

    C++全套学习课件C++概述.pdf

    C++全套学习课件C++概述.pdf

    Visual C++概述.pdf

    【Visual C++概述】 Visual C++是由Microsoft公司开发的一款强大的可视化集成编程软件,它是Microsoft Visual Studio家族的一员。这款工具主要用于在Windows操作系统环境下开发C++应用程序。由于Windows操作系统在...

    c++概述01 2011

    【标题】"C++概述01 2011" 提供了我们即将探讨的主题——C++编程语言的基础知识。C++是计算机科学中一种强大的、面向对象的编程语言,由Bjarne Stroustrup在C语言的基础上发展而来。这个标题暗示我们将从最基础的...

    Visual C++概述.docx

    【Visual C++概述】 Visual C++是由Microsoft公司开发的一款强大的可视化集成编程软件,它是Microsoft Visual Studio家族的一员。这款工具主要用于在Windows操作系统环境下开发C++应用程序。由于Windows操作系统在...

    VC++程序设计-C++概述参考.pdf

    《VC++程序设计-C++概述参考》一书主要介绍了C++编程语言的起源、发展、特点以及基础概念。C++是基于C语言发展而来,旨在克服C语言的一些局限性,同时保留其高效和接近汇编语言的特点。以下是C++的重要知识点: 1. ...

    VC++程序设计-第一章C++概述.pdf

    《VC++程序设计-第一章C++概述》 C++编程语言是计算机科学中的一个重要分支,它的诞生和发展历程紧密地关联着计算机技术的进步。C++起源于C语言,由Bjarne Stroustrup博士在1980年为解决C语言的局限性而提出,其...

    C++基础课件第一章C++概述.ppt

    C++基础课件第一章C++概述.ppt

    第一讲:Visual C++概述

    vc+教学 第一讲:Visual C++概述

    计算机程序设计(C++):第1章 程序设计与C++概述.ppt

    计算机程序设计(C++):第1章 程序设计与C++概述.ppt

    C++概述 qqqdos

    ### C++概述 C++是一种强大的面向对象的编程语言,它由Bjarne Stroustrup于1979年在贝尔实验室开始设计,并在20世纪80年代早期完成。C++的设计目标是提供一种高效的编程语言,同时保持C语言的兼容性,并引入面向...

    C++Primer读书笔记:C++概述.pdf

    C++Primer中文第三版(C++从入门到精通)第一章的读书笔记,主要是C++程序、预处理器指示符、iostream库等的基础知识点读书笔记。

    第章C++概述2022优秀文档.ppt

    C++语言概述 C++是一种高性能、通用目的编程语言,基于C语言发展而来。它不仅继承了C语言的优点,同时克服了C语言的缺点,使其成为一种功能强大且广泛应用的编程语言。 1.1 C++语言的特点 C++语言有以下几个特点...

    C++概述实验及报告.zip

    C++是一种强大的、通用的编程语言,由Bjarne Stroustrup在1983年设计并发展起来,作为C语言的扩展。它被广泛应用于系统软件、应用软件、游戏开发、驱动程序、嵌入式系统以及大规模的企业级应用程序。本实验主要针对...

    第一章C++概述

    C++是一种使用非常广泛的计算机编程语言。C++是一种静态数据类型检查的、支持多重编程方式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计等多种程序设计风格。

    第1章C++-概述.ppt

    C++概述 本章节将对C++语言进行概述,包括C++的起源、特点、程序结构、新特性等方面的内容。 C++的起源和特点 C++语言是由Bjarne Stroustrup在1983年开发的,它是C语言的扩展版本,具有面向对象的编程能力。C++...

    难得干货好课程!最新完结版C++全栈开发视频教程 最新版本C++从零基础到精通课程

    01_第1章_c++概述 02_第2章_c++初始 03_第3章_c++对c的扩展 04_第4章_类和对象 05_第5章_c++模板 06_第6章_c++类型转换 07_第7章_c++异常 08_第8章_STL详解 09_第9章_Qt图形界面开发 课程全部目录(未全部列出) ...

    C++入门基础_30分钟入门教程

    1.1 C++概述 C++由Bjarne Stroustrup博士在20世纪80年代初期发明,最初称为"C with Classes"。1983年正式更名为C++,并在1985年发布第一个商业化版本。C++的标准在1998年由ANSI-ISO委员会制定,即ISO/IEC 14882-1998...

Global site tag (gtag.js) - Google Analytics