C++试听课

介绍C++的发展历程和应用领域

  • 1. C++ 起源
    20世纪70年代,贝尔实验室 Thompson 和 Ritchie 在想玩游戏的过程中,开发了C语言用于重写unix系统。

    20世纪80年代,贝尔实验室 Bjarne Stroustrup 在C语言的基础上开发了C++ ,主要为了解决软件设计危机。C++应用范围:Office工具,编译器,操作系统,大型游戏。

    C++叫一开始带类的C,可想而知其和C语言的关系。C++衍生出了Java(语法比较简单),Java和C# 是兄弟。

    2. 常用C++开发工具
    [记事本+命令行] 专业大牛身份标识别,上手慢
    [Visual c++] 经典开发工具,与流行的操作系统有冲突
    [VIsual Studio] 功能强大,体积同样强大;3-5G只支持微软版本的C,但是课程推荐标准C。
    [Code::blocks] 开源免费C++开发工具,专业开发人员推荐
    DEV C++、 Xcode、 Clion(收费)、C-free(国产)、 Xcode(苹果公司的开发工具mac)、C4droid(手机端运行)
    Eclipse c++ 开发
    常用编译器
    ​ gnu-默认命令为g++ prog1.cc -o prog1
    ​ 微软visual studio: cl -GX prog1.cpp
    3. C++代码基本要素、hello word、两数相加
    基本概念:

    变量:定义一个变量,最好记得赋初值(变量的初始化)。

    表达式:由一个/几个 操作数 + 操作符 组成,每个表达式都会产生一个结果,通常是将操作符作用到操作数所产生的值。

    分号:c++中大多数语句以分号结尾(99%),
    带分号:
    ->类定义: class clase_name {};
    ->函数原型 [没有大括号] 带分号,函数调用带分号
    不带分号:
    大括号后 大部分是块语句不用分号:if、for、while语句块、函数实现

    函数:函数定义4要素:返回类型、函数名、圆括号(参数列表)、函数体{以花括号包围的语句块}
    ​ a. main() 返回类型必为int, 0表示程序运行成功,-1表示程序运行失败(其他非零返回值由操作系统定义特殊含义)
    b. return语句返回值类型 和 函数返回类型 一致
    c. 函数名要符合命名规范

    每个C++程序都包含至少一个[函数],必须要有main函数。操作系统调用 main() 来执行程序(唯一被操作系统显示调用的函数)。

    源文件: 保存[待编译程序]的文件,后缀名与具体编译器有关, 有.cpp .cp .c等等,(C++ primer .cc结尾)

    编译预处理命令, 应该写在文件的最开始部分,尖括号 和 引号指明了不同的头文件搜索路径

    #include < > 引用的是编译器的类库路径里面的头文件;
    #include " " 引用的是用户程序目录的相对路径中的头文件,如果在程序目录没有找到引用的头文件则到编译器的类库路径的目录下找该头文件;
    C头文件以.h结尾,C++采用C前缀兼容C头文件(?),其底层实际还是导入了.h文件。也可以在C++中采用.h的头文件。

 

  • C++语言的起源、发展与现代计算机科学中的重要作用

    一、C++语言的起源

    C++语言起源于20世纪80年代,由Bjarne Stroustrup博士在贝尔实验室创造。他最初的目标是创建一种能够支持面向对象编程的C语言扩展,以便更好地支持大型软件项目的开发。因此,C++在很大程度上保留了C语言的语法和特性,并在此基础上增加了类、对象、继承、多态等面向对象的特性。

    二、C++如何从C语言发展而来

    C++在发展过程中,逐步吸收了C语言的优点,并解决了C语言在面向对象编程方面的不足。C语言是一种面向过程的编程语言,而C++则在此基础上增加了面向对象的特性,使得代码更加模块化、易于维护和复用。此外,C++还扩展了C语言的标准库,增加了更多的数据类型和算法,进一步提高了编程的效率和便捷性。

  •  

    三、C++在现代计算机科学中的重要作用

    C++在现代计算机科学中扮演着举足轻重的角色。由于其高效、灵活且功能强大的特性,C++被广泛应用于各个领域。

    1. 操作系统:许多操作系统,如Windows、Linux的某些部分,都使用C++进行底层开发。C++的高效性和对硬件的直接访问能力使其成为开发操作系统的理想选择。

    2. 游戏开发:C++在游戏开发领域具有广泛应用。由于游戏需要高效处理图形、物理和AI等复杂计算,C++的高性能和直接控制硬件的能力使其成为游戏开发的首选语言。许多知名游戏,如《魔兽世界》、《守望先锋》等,都是使用C++开发的。

    3. 图形界面设计:C++在图形用户界面(GUI)设计方面也有广泛应用。通过结合图形库,如Qt或MFC,C++可以创建出功能丰富、交互性强的图形界面应用程序。

    4. 网络编程:在网络编程领域,C++同样表现出色。许多网络协议和服务器软件都是用C++编写的,因为它能够高效地处理网络数据,并提供了强大的并发处理能力。

    此外,C++还在科学计算、嵌入式系统、虚拟现实等领域发挥着重要作用。随着计算机科学的不断发展,C++的应用领域也在不断扩展,其在现代计算机科学中的地位愈发重要。

  • 发展历程

     
    1970年,AT&T贝尔实验室的工作人员D.Ritchie和K.Thompson共同研发了C语言。研制C语言的初衷是用它编写UNIX系统程序,因此,实际上C语言是UNIX的“副产品”。
    1971年,瑞士联邦技术学院N.Wirth教授发明了第一个结构化的编程语言Pascal
    20世纪70年代中期,本贾尼·斯特劳斯特卢普在剑桥大学计算机中心工作。斯特劳斯特卢普希望开发一个既要编程简单、正确可靠,又要运行高效、可移植的计算机程序设计语言。而以C语言为背景,以Simula思想为基础的语言,正好符合斯特劳斯特卢普的初衷和设想。
    1979年,本贾尼·斯特劳斯特卢普到了AT&T贝尔实验室,开始从事将C改良为带类的C(C with classes)的工作。、1983年,该语言被正式命名为C++。 
     
    1985年、1990年和1994年,C++先后进行3次主要修订。
    C++的标准化工作于1989年开始 [21],并成立了一个ANSI和ISO(International Standards Organization)国际标准化组织的联合标准化委员会。
    1994年1月25曰,联合标准化委员会提出了第一个标准化草案。在该草案中,委员会在保持斯特劳斯特卢普最初定义的所有特征的同时,还增加了部分新特征。 [3]
    在完成C++标准化的第一个草案后不久,亚历山大·斯特潘诺夫(Alexander Stepanov)创建了标准模板库(Standard Template Library,STL)。在通过了标准化第一个草案之后,联合标准化委员会投票并通过了将STL包含到C++标准中的提议。STL对C++的扩展超出了C++的最初定义范围。虽然在标准中增加STL是个很重要的决定,但也因此延缓了C++标准化的进程。
    1997年11月14日,联合标准化委员会通过了该标准的最终草案。
    1998年,C++的ANSI/IS0标准被投入使用。 [4]
0.059561s