1. c 和 c++ 的区别
- c++ 代码中可以混编 c 代码,c++ 里面写 c 代码也可以调用
- c++ 面向对象(java), c 面向过程
- 很多的开源框架都是用 c++ 写的(大部分基于 c++)
打印:
1 |
|
2. 常量
c++ 中 通过指针修改常量,编译都不会通过。(在C中可以)
1 | int main() { |
3. 引用和常量引用
3.1 引用
int &b = a;
:b 是 a 的引用可以直接根据地址改变a的数据
1 | int swap(int &number1,int &number2){ // 引用 |
打印结果:
1 | a的地址0x61fe04 |
3.2 常量引用
const Student &stu
:签名加一个const关键字就变成了只读,不能修改里面的任何值
1 | typedef struct{ |
4. 函数重载和默认参数
c 不允许函数的重载,c++ 中可以
1 | int add(int number1, int number2 = 200, bool cache = 0) { // number2 = 200 默认的参数 kotlin 很像 |
5. 类的初探
- class 定义类,跟 java 几乎类似
- 真正的开发过程中我们的 cpp 或者 c 文件,最终 dll 或者 so 库供调用者使用,所以为了确保类能够正常被调用,我们一般需要定义 .h 头文件
- 实现方法的使用要用命名空间 xxx类名::xxx方法
头文件:
1 | class Student{ // 结构体类似 |
实现文件:
1 | // 写实现,定义了另外一个方法 |