c++基础
c++基础
new与delete
new,delete用于堆空间的分配与回收
new:用于从堆中分配指定大小得内存区域,并返回内存区域得首地址,相较于malloc可以自动计算大小,无需指针转换。
用法示例:
1 | int *arr = new int[100]; |
delete:用于释放new分配的堆内存
用法示例:
1 | delete[] arr; |
引用
引用是某个对象(即变量)的别名,定义形式如下:
类型&引用名 = 变量名;
例如
1 | int a = 10; |
引用很少单独使用,常常作为形参的方式
例如:
1 | void swap(int &a,int &b){...} |
注意:
(1)在变量声明时出现&才是引用运算符,其它地方的&都是取地址运算符;
(2)引用代表一个变量的别名,必须在定义时初始化,不能在定义完成后再赋值;
(3)一个引用名只能作为一个变量的别名;
传参方式
传地址方式
1 | void swap(int *p1, int *p2); |
传地址方式的要点是:main函数和swap函数共用x,y变量的存储空间,只不过在main函数中,用x,y访问此空间;而在swap函数中,则用$*p1,*p2$这种间接访问方式访问此空间。由于空间是共用的,所以形参$*p1,*p2$发生了改变,也就影响到了实参x,y。
传引用方式
1 | void swap(int &a, int &b) |
传引用方式的要点是:在main中,用变量x,y访问存储空间,在swap函数中,用变量的别名a,b访问存储空间。由于a,b就可以看成是x,y,因此交换了a,b的内容,自然就影响了x,y。
类与对象
类与对象的基本概念
类(class):它将数据以及这些数据上的操作封装在一起。
对象(object):是具有类类型的变量
类的定义
成员函数
构造函数
析构函数
构造函数重载
默认构造函数
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 小江的博客!