C++ 結構體 (struct)
C++ 結構體
結構體(也稱為 struct)是一種將幾個相關變數組合到一個地方的方式。結構體中的每個變數都稱為結構體的**成員**。
與陣列不同,結構體可以包含許多不同的資料型別(int、string、bool 等)。
建立結構體
要建立結構體,請使用 struct
關鍵字並在花括號內宣告其每個成員。
聲明後,指定結構體變數的名稱(在下面的示例中為 **myStructure**)
struct { // 結構體宣告
int myNum; // 成員(int 變數)
string myString; // 成員(string 變數)
} myStructure; // 結構體變數
訪問結構體成員
要訪問結構體的成員,請使用點語法 (.
)
示例
將資料分配給結構體成員並列印它
// 建立一個名為 myStructure 的結構體變數
struct {
int myNum;
string myString;
} myStructure;
// 為 myStructure 的成員賦值
myStructure.myNum = 1;
myStructure.myString = "Hello World!";
// 列印 myStructure 的成員
cout << myStructure.myNum << "\n";
cout << myStructure.myString << "\n";
自己動手試一試 »
一個結構體用於多個變數
您可以使用逗號 (,
) 在多個變數中使用一個結構體
struct {
int myNum;
string myString;
} myStruct1, myStruct2, myStruct3; // 多個結構體變數用逗號分隔
此示例演示如何在兩個不同的變數中使用結構體
示例
使用一個結構體表示兩輛汽車
struct {
string brand;
string model;
int year;
} myCar1, myCar2; // 我們可以在這裡用逗號分隔新增變數
// 將資料放入第一個結構體
myCar1.brand = "BMW";
myCar1.model = "X5";
myCar1.year = 1999;
// 將資料放入第二個結構體
myCar2.brand = "Ford";
myCar2.model = "Mustang";
myCar2.year = 1969;
// 列印結構體成員
cout << myCar1.brand << " " << myCar1.model << " " << myCar1.year << "\n";
cout << myCar2.brand << " " << myCar2.model << " " << myCar2.year << "\n";
自己動手試一試 »
命名結構體
透過給結構體命名,您可以將其視為一種資料型別。這意味著您可以在程式的任何地方隨時使用此結構體建立變數。
要建立命名結構體,請將結構體名稱緊跟在 struct
關鍵字之後
struct myDataType { // 此結構體名為 "myDataType"
int myNum;
string myString;
};
要宣告使用該結構體的變數,請將結構體的名稱用作變數的資料型別
myDataType myVar;
示例
使用一個結構體表示兩輛汽車
// 宣告一個名為 "car" 的結構體
struct car {
string brand;
string model;
int year;
};
int main() {
// 建立一個 car 結構體並存儲在 myCar1 中;
car myCar1;
myCar1.brand = "BMW";
myCar1.model = "X5";
myCar1.year = 1999;
// 建立另一個 car 結構體並存儲在 myCar2 中;
car myCar2;
myCar2.brand = "Ford";
myCar2.model = "Mustang";
myCar2.year = 1969;
// 列印結構體成員
cout << myCar1.brand << " " << myCar1.model << " " << myCar1.year << "\n";
cout << myCar2.brand << " " << myCar2.model << " " << myCar2.year << "\n";
return 0;
}
自己動手試一試 »