C语言进阶

张萃

目录

  • 1 第一章  C++的初步知识
    • 1.1 从C到C++
    • 1.2 C++的词法和词法规则
    • 1.3 最简单的C++程序
    • 1.4 C++对C的扩充
      • 1.4.1 C++的输入输出
      • 1.4.2 用const定义常量
      • 1.4.3 函数原型声明
      • 1.4.4 函数重载
      • 1.4.5 函数模板
      • 1.4.6 有默认参数的函数
      • 1.4.7 变量的引用
      • 1.4.8 内置函数
      • 1.4.9 作用域运算符
      • 1.4.10 字符串变量
      • 1.4.11 动态分配/回收内存运算符
  • 2 类和对象
    • 2.1 面向对象程序设计方法概述
    • 2.2 类的声明和对象的定义
    • 2.3 类的成员函数
    • 2.4 对象成员的引用
    • 2.5 类和对象的简单应用
    • 2.6 类的封闭性和信息隐蔽
  • 3 关于类和对象的进一步讨论
    • 3.1 构造函数
    • 3.2 析构函数
    • 3.3 调用构造函数和析构函数的顺序
    • 3.4 对象数组
    • 3.5 对象指针
    • 3.6 共用数据的保护
    • 3.7 对象的动态建立和释放
    • 3.8 对象的赋值和复制
    • 3.9 静态成员
    • 3.10 友元
    • 3.11 类模板
  • 4 运算符重载
    • 4.1 什么是运算符重载
    • 4.2 运算符重载的方法
    • 4.3 重载运算符的规则
    • 4.4 运算符重载函数作为类成员函数和友元函数
    • 4.5 重载双目运算符
    • 4.6 重载单目运算符
    • 4.7 重载流插入运算符和流提取运算符
  • 5 继承与派生
    • 5.1 继承与派生的概念
    • 5.2 派生类的声明方式
    • 5.3 派生类的构成
    • 5.4 派生类成员的访问属性类型兼容规则
    • 5.5 派生类的构造函数和析构函数
    • 5.6 多重继承
  • 6 多态性与虚函数
    • 6.1 多态性的概念
    • 6.2 一个典型的例子
    • 6.3 虚函数
    • 6.4 纯虚函数与抽象类
  • 7 输入输出流
    • 7.1 C++的输入输出
    • 7.2 标准输出流
    • 7.3 标准输入流
    • 7.4 对数据文件的操作与文件流
    • 7.5 字符串流
从C到C++



   


1、C++的出现

    C语言是结构化和模块化的语言,C程序的设计者必须细致地设计程序中的每个细节,准确地考虑程序运行时每一时刻发生的事情,当程序规模变大时,结构化程序设计就显得力不从心。

    为了解决软件设计危机,在20世纪80年代提出了面向对象的程序设计思想(OOP)在实践中人们发现C语言使用如此广泛,如果在它的基础上发展一种面向对象的语言,一定会让大众容易接收这种语言,所以产生了C++。

   2、C++发展历史:

     1988   AT&T发布第一个C++编译系统。它是一个预编译器,它把C++代码转换成C代码,然后再用C编译系统生成目标代码。

    1989   C++2.0  类的多重继承

    1991   C++3.0  类的模板

               C++4.0  异常处理、命名空间

    1997   ANSI发布C++标准

  3、c++的特点

  C++既可以用于面向过程的结构化程序设计,也可用于面向对象的程序设计。

  C++对C的增强体现在两个方面:

 (1)对原来的面向过程机制做了扩充。

 (2)增加了面向对象的机制。

  学习C++之后,既可以进行面向对象的程序设计,也可以进行面向过程的程序设计。