c++指標使用經驗總結之懸垂指標
如果將作用域A的變數地址賦給在作用域B的變數指標。當A中相應變數的生存週期結束後,會使B的指標出現“懸垂指標”的現象(懸垂指標指向曾經存放物件的記憶體,但該物件已經不再存在了。懸垂指標往往導致程式錯誤,而且很難檢測出來。)如下程式碼:
#include<iostream>
#include <windows.h>
using namespace std;
int *p=NULL;
void fun()
{
int i=10;
p=&i;
}
void main()
{
fun();
cout<<"*p= "<<*p<<endl;
Sleep(1000);
cout<<“一秒鐘後,fun()中的i變數的儲存空間被釋放,p所指物件的值為:"<<endl<<"*p= "<<*p<<endl;
}
輸出為:
*p= 10
一秒鐘後,fun()中的i變數的儲存空間被釋放,p所指物件的值為:
*p= 1245056
Press any key to continue
可見,fun()執行完一秒鐘後,p成為懸垂指標。
相關文章
- C/C++指標總結C++指標
- 懸掛指標指標
- 指標總結指標
- 再學C/C++ 之 指標常量 和 常量指標C++指標
- 又見懸空指標指標
- C++ this 指標C++指標
- C++ 指標C++指標
- iOS野指標定位總結iOS指標
- C/C++指向指標的指標C++指標
- NULL 指標、零指標、野指標Null指標
- C++中const與指標、引用的總結C++指標
- C++指標理解C++指標
- 【c++】智慧指標C++指標
- C++智慧指標C++指標
- 關於C++當中的指標懸空問題C++指標
- C++ 指標常見用法小結C++指標
- [C++] 成員函式指標和函式指標C++函式指標
- 野指標 空指標指標
- 詳解c++指標的指標和指標的引用C++指標
- C++中的this指標C++指標
- c++ 函式指標C++函式指標
- C++引用和指標C++指標
- C++指標轉換C++指標
- C++指標問題C++指標
- 「C++」理解智慧指標C++指標
- c++指標小計C++指標
- C++(函式指標)C++函式指標
- C++ 用智慧指標這樣包裝 this 指標是否可行C++指標
- 指標常量和常量指標指標
- 誰說Java無指標, JAVA連結串列指標也好煩 - Java 指標迴歸Java指標
- C++中的函式指標和函式物件總結C++函式指標物件
- JavaScript(1)之——this指標JavaScript指標
- 關於C/C++ void指標,使用void指標拷貝int 陣列C++指標陣列
- C語言指標安全及指標使用問題C語言指標
- C語言指標(三):陣列指標和字串指標C語言指標陣列字串
- C++ 類成員指標C++指標
- C++進階(智慧指標)C++指標
- 1-7 C++指標C++指標