C++ 总体内容

1 C++概述

  1.1 C++两大变成思想

    1.1.1 面向对象  泛型编程

  1.2 C++98标准

2 C++书写hello worl

  2.1 包含头文件 #include <iostream> //标准输入输出头文件

  2.2 using namespace std; //使用标准命名空间

  2.3 cout << "hello world" << endl;

  2.4 面向对象三大特征: 封装、继承、多态

3 双冒号作用于运算符

  3.1 ::前面如果没有任何作用域,就代表全局作用域

4 命名空间 namespace

  4.1 命名空间的用途:解决命名冲突

  4.2 命名空间下,可以存放变量,函数,结构体,类...

  4.3 命名空间必须声明在全局的作用域下

  4.4 命名空间可以嵌套命名空间

  4.5 命名空间是开放的,可以随时向命名空间添加新的成员

  4.6 命名空间是可以匿名的

  namespace

  {

    int a = 10;

    int b = 20; 

  }

  以上相当于:static int a = 10; static int b = 20; 匿名命名空间中的变量a和变量b只能在本文件使用

  4.7 命名空间是可以取别名的

  namespace veryLongName

  {

    int a = 100;

  }

  void test()

  {

    namespace veryShortName = veryLongName;

    cout << veryShortName::a << endl;

    cout << veryLongName::a << endl;

  }

5 using 声明和using 编译指令

  5.1 using 声明

    5.1.1 声明的格式: using student::name;

    5.1.2 当就近原则和 using 声明同时出现时,需要避免二义性

  5.2 using 编译指令

    5.2.1 using namespace std;

    5.2.2 如果出现就近原则,优先使用就近原则

    5.2.3 如果有多个命名空间打开,并且存在同名的变量,使用的时候需要加作用域区分

6  C++对C语言的增强

  6.1 全局变量增强

  6.2 函数检测增强

    6.2.1 形参变量类型检测增强,函数声明的返回值检测增强,函数返回值检测增强,调用时参数传入个数检测增强

  6.3 类型转换检测增强

    6.4.1 malloc返回的void* 在C++下必须强转

  6.4 struct 增强

    C语言中,结构体里面不能放函数

    C语言中,声明结构体必须加上struct关键字

  6.5 bool 类型增强

    C语言中,没有bool 类型

  6.6 三目运算符增强

    C语言中,三目运算符返回的是值  *(a > b ? &a : &b) = 10; 

    C++语言中,三目运算符返回的是变量  a > b ? a : b = 10; 和上面的语句等效

猜你喜欢

转载自www.cnblogs.com/chen-cai/p/10426038.html
今日推荐