Struct是種把相同類型variable分類法,JS也有類似的做法。
這對瞭解物件導向觀念很有幫助。
比方說我們想紀錄車庫裡有幾台車,包含出廠年份、型號、顏色和廠牌,我們可以怎麼輸入資料到C++?
int year, string brand, string colour
等等。int year2, string brand2....
依此類推。好麻煩啊
struct Car { // Declare一個結構,叫做Car
int myNum; // 這裡的int myNum叫做Member (int variable)
string myString; // 這裡的string myString叫做Member (string variable)
}
上面是C++結構的基本樣貌,以下是如何assign數值給結構還有如何輸出:
結構名字然後用點點 . 連接Member = 要放進去的資料;
啊還是要記得,屬於何種資料類型就只能assign該種資料類型。
Car.myNum = 1;
Car.myString = "Hello World!";
如果我們需要輸入好幾個variable,如範例有好多台車,可以怎麼做?
因為Struct有了名字,裝東西時就很方便,像收納箱上貼好標籤“冬天衣物”、“文具”這樣,不用各別每樣東西再寫一次variable,可以直接套用,範例如以下:
struct Car {
string brand;
string colour;
string model;
int year;
};
int main() {
car myCar1; //這是變造出第一個variable,第一台車資料
myCar1.brand = "Jaguar";
myCar1.model = "F-type";
myCar1.year = 2021;
myCar1.colour = "White";
car myCar2; //造出第二個variable,第二台車資料
myCar2.brand = "Jeep";
myCar2.model = "Wrangler";
myCar2.colour = "black";
myCar2.year = 2012;
cout << myCar2.brand; //輸出也很簡單,就像這樣
}
Reference: geeksforgeeks, CSDN, cplusplus