2021-10-08|閱讀時間 ‧ 約 3 分鐘

C++ 新手教學6

指標(Pointer)、參考(reference)

指標(Pointer)

  • C++的複合型別,儲存記憶體位置的資料格式,是類似地址的存在
指標
資料型別 *變數名稱;
int *ptr; // (int *):存 int值的位置 int ptr; // (int) :存 int值
指標的指標
資料型別 **變數名稱;
int **ptr; // (int **):存 int值的位置的位置 int *ptr; // (int) :存 int值的位置

取址運算子

  • 取址運算子(&)可用來取得變數開頭的記憶體位置,是類似查詢地址的方法
&變數名稱
int x = 5; int *x_ptr = &x; // &x 取得 x 的位置 , 存給x_ptr

參考(reference)

  • 替代名稱,是類似別名(Alias)的存在 (與取址運算子(&)不同)
資料型別 &變數名稱;
int x = 5; int &ref = x; // (int &):x 的別名是ref &ref; // (&) : 代表ref 的位置
參考與取址運算子

間接運算子

  • 間接運算子(*)可用來取得該記憶體位置的變數,是類似透過地址查誰住在那裡方法 (與指標(Pointer)不同)
*變數名稱
int x = 5; int *x_ptr = &x; // &x 取得 x 的位置 , 存給x_ptr *x_ptr // 從位置x_ptr,找到該位置是x (x=5)

參考資料

[1].
[2].
[3]. C++Primer中文版-Stanley B. Lippman, Josée Lajoie, Barbara E. Moo著; 黃銘偉 譯; 碁峰出版; 2019/11/30。

延伸閱讀

下一篇:
上一篇:
目錄:
分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.