Struct結構體 (C++)

2021/10/09閱讀時間約 2 分鐘
使用者自訂的資料型別
與Class類似,Struct關鍵字定義的成員是(Public),Class則是(Private)
  1. 結構體定義
  2. 結構體變數宣告
  3. 結構體定義與宣告
  4. 存取結構體成員
  5. 動態配置記憶體
  6. 結構體的函式成員

結構體定義

Struct格式
struct 結構體名稱

{

結構體成員;

};
相當於Class格式
class 類別名稱

{

public:

類別內容成員;

};

結構體變數宣告

  • 結構體名稱 結構體變數名;
  • 結構體名稱* 結構體指標名;
  • 結構體名稱 結構體陣列名[n];

結構體定義與宣告

  • 舉例:型別為A 的物件叫做a_object。A是自訂型別,定義在struct A中

定義與宣告 分開

A a_object;
定義與宣告 分開

定義與宣告 結合

struct A{

int a;

}a_object;
定義與宣告 結合

存取結構體成員

一個結構體會定義好幾個成員,存取方式有兩種
  • .」運算子:透過變數/物件,直接存取
  • ->」運算子:指到結構體位址
第一種(一般變數/物件)
結構體變數 . 資料成員名稱;

結構體陣列 [ i ] . 資料成員名 資料成員名 ;
第二種(指標)
結構體指標->資料成員名稱;

動態配置記憶體

結構體名稱* 結構體指標 = new 結構體名稱 結構體名稱;
結構體名稱* 結構體指標 = new 結構體名稱 結構體名稱[陣列長度];

結構體的函式成員

定義1
struct 結構體名稱

{

資料成員;

函式成員;

};
定義2
struct 結構體名稱

{

資料成員;

函式成員宣告;

};

結構體名稱::函式成員定義 {}
  • 備註範圍運算子(::) ,函式宣告在結構體內,需用範圍運算子表明函式在哪裡。
呼叫
結構體變數.函式成員 (參數列);

結構體指標->函式成員 (參數列);
為什麼會看到廣告
匿名李
匿名李
C++新手教學正在規畫緩慢更新(圖片、內容增加、程式碼文字)_2023/04/17,文章有錯誤的地方還請留言指正,謝謝各位
留言0
查看全部
發表第一個留言支持創作者!