1、编程思想
C++语法+编程思想 ->面向对象(OO:object oriented)
面向对象 <-> 面向过程
抽象 <-> 具体
面向对象:优化、维护、升级、、并行开发、臭味低、耦合低
c++:兼容C,升级版,基于面向对象设计出的开发语言。
面向对象:封装、继承、抽象、多态
2、C++中标准库头文件:
1.iostream ->标准IO流头文件
2.如果使用C标准库,比如stdio.h,添加头文件时,可以直接
#include<stdio.h>
#include<cstdio> ->最好这样写,.h去掉,前面加C
3、常见运算符
cout,endl,”” -> 对象
<< >> -> 流运算符
cout => console out 输出控制台,使用流运算符将数据往输出控制台给进去,则输出控制台会将收到的数据,输出出去。
endl => end line : ‘\n’+fflush;
fflush => 给到哪,哪就清缓存
cin => console in 输入控制台
流运算符的右值类型:基本数据类型,指针都可以。
4、关于类
类的非静态成员函数,非静态成员函数的调用,必须通过该类具体对象+访问运算符进行调用,无法直接全局调用。
类的非静态成员函数,为什么必须通过该类的对象来调用呢?因为此函数,语法上决定了一个“隐藏的”参数=>this指针。
1.this指针类型:该类 类型的 指针常量 => 类名* const this;
2.传参怎么传:调用对象的地址。
5、修改符
访问限制符:public private protected
公开,私有,受保护,对类的成员进行修饰,成员的访问权限发生变化
公开成员:可以直接通过对象全局访问,也可以在类的成员函数内部,通过this指针访问。
私有、受保护:不可以直接通过对象全局访问,但是可以在类的成员函数内部,通过this指针访问。
私有成员访问:公开接口进行访问,常见访问get/set
6、引用
引用:变量的别名,当引用变量a,绑定实际变量b之后,对a所有的操作,即对b操作。
语法:定义变量时,使用&表示引用变量。
注意:
- 初始化的时候绑定,且只能绑定一次,且必须绑定
- 必须绑定具体变量,不能绑定常量
- 绑定对象的类型,与绑定变量本身的类型,必须一致。隐式转换也不算
7、类的特殊函数
构造函数:constructor ->初始化
初始化,必然是生成的时候,顺便第一次初始化,所谓生成指申请内存定义申请内存。
构造函数:无返回值,函数名=类名,参数根据需求
当变量被定义的时候,自动被调用,且只能被调用一次。
构造函数,可以定义多个,前提参数不能一样
具体调用,是在创建具体对象时,根据其初始化参数,自动匹配并调用的。
析构函数
:当对象的生命周期结束时,自动被调用
无返回 函数名为 ~类名 参数没有