本單元語法速查表
| 語法 | 用途 | 備註 |
|---|---|---|
struct point { int x, y; }; |
定義新型態 | 結尾分號必加 |
point p;、point a[100]; |
宣告變數/陣列 | 從此跟 int 平起平坐 |
p.x = 3; |
「.」存取成員 | 意思是「p 的 x」 |
p = q; |
整包賦值 | 所有成員(含陣列成員)一起複製 |
point p = {3, 5}; |
大括號初始化 | 照成員宣告順序;沒給到的補零 |
void f() { ... } 寫在 struct 內 |
成員函式 | p.f() 呼叫;函式內直接用成員名 |
point() { ... } |
建構子 | 與型態同名、無回傳型態;宣告時自動執行 |
point(int a, int b) : x(a), y(b) { } |
(延伸)初始化列表 | 效果同大括號內指派 |
bool operator < (const point &b) const |
多載小於 | sort 免第三參數;相等回傳 false |
istream& operator >> (istream &is, point &p) |
(延伸)自訂讀入 | 寫在 struct 外;記得 return is; |
ostream& operator << (ostream &os, const point &p) |
(延伸)自訂輸出 | 同上;return os; |