初识c++之指针/引用和内存地址
本文仅从本人认知的角度来看待和描述指针/内存和引用, 是不太正规个人笔记, 欢迎留言讨论交流.
取内存地址
&变量名
1 |
|
引用
int *变量 = &被引用变量
——- 等同 ——-
int *变量;
变量 = &被引用变量
1 |
|
1 |
|
结果相同, 无论a
或*b
谁的值改变了, 都会同步. 因为*b
指向a
的内存地址
*b
是int指针类型, 它指向a
解引用
变量
*b
引用变量a
, 变量**c
引用&b
变量. 解两次**c
才能得到a
的内存地址
1 |
|
1 |
|
申请内存
int *a = new int;
1 |
|
这种做法是错误的, 申请的内存需要自己处理释放. 否则会造成内存泄漏引起程序崩溃等问题. 请看下例
释放内存 (释放堆中内存空间)
delete 指针变量名;
(上例中, 申请内存使用后不释放. 会造成内存泄漏)
1 |
|
初识c++之指针/引用和内存地址
http://edk24.com/2019/8cac8e5.html