0、指针&数组
数组是指向其第一个元素的指针,即数组变量就是指针。故可将(*)用于数组,也可将([])用于指针,eg:
int MyNums[5] = {0};
int* pNums = MyNums;
可以使用*(MyNums+1),也可以使用pNums[1]。
1、指针使用时要注意的点
①务必初始化指针变量为NULL;
②使用前要确认指针是否有效(检查是否为NULL);
③new和delete要配套,不然会造成内存泄露;
2、检查new发出的分配请求是否满足
法一:使用异常处理,catch(bad_alloc)
1 #include "stdafx.h" 2 #include <iostream> 3 using namespace std; 4 5 int main() 6 { 7 try 8 { 9 int* pAge = new int [536870911]; 10 delete[] pAge; 11 } 12 catch(bad_alloc) 13 { 14 cout<<"Error!"<<endl; 15 } 16 17 return 0; 18 }
法二:new(nothrow)
1 #include "stdafx.h" 2 #include <iostream> 3 using namespace std; 4 5 int main() 6 { 7 8 int* pAge = new(nothrow) int [536870911]; 9 if(pAge) 10 { 11 delete[] pAge; 12 } 13 else 14 cout<<"Error!"<<endl; 15 16 return 0; 17 }
3、引用==别名
引用,可以访问相应变量的内存单元。
时间: 2024-10-25 22:54:40