一、引用
某个变量的引用,相当于该变量的一个别名
int n = 2;
int &r= n;
r = 4;
cout<<r;//4
cout<<n;//4
定义引用时一定要将其初始化成引用某个变量
初始化后,它就一直引用该变量 ,不会再引用别的变量了
二、const 用法
1、用来定义常量
一旦定义不可修改
2、定义常量指针
注意常量指针的指向可以改,但是不能通过常量指针修改其所指向的内容,编译会报错
不能把常量指针赋给非常量指针,反过来可以。“你要想指我这块地就自己过来指,我不给你”~
如果非得做,可以用强制类型转换,嗯
函数参数为常量const指针时,可避免函数内部不小心改变参数指针所指地方的内容
3、定义常引用
不能通过常引用修改其所引用的变量
三、动态内存分配
在C语言中我们可以使用malloc函数对内存进行动态分配
在C++中我们可以使用new运算符来实现动态内存分配
对应分配,释放空间我们使用delete 指针;
一片空间不能被delete多次
举个栗子:
int *p;
*p = new int;
*p = 5;//通过new出来的存储空间作修改
delete p;
int *p = new int[100];//对于一块连续空间的内存分配就是动态分配数组
p[0] = 1;
p[20] = 3;
delete []p;
记笔记:
sizeof()不会计算静态成员变量
在静态成员函数中,不能访问非静态成员变量和调用非静态成员函数!
初始化列表这个东西
友元:
1、一个类的友元函数可以访问该类的私有成员
2、如果A是B的友元类,那么A的成员函数可以访问B的私有成员