| 存取指定詞 | 類別內部 | 衍生類別 | 友元函數 | 類別物件 |
|---|---|---|---|---|
private | ✅ | ❌ | ✅ | ❌ |
protected | ✅ | ✅ | ✅ | ❌ |
public | ✅ | ✅ | ✅ | ✅ |
友元函數包含三類:
1. 宣告為友元的一般非成員函數
2. 宣告為友元的其他類別成員函數
3. 宣告為友元類別的所有成員函數
核心原則:private 成員永遠不被繼承(不可見,不可存取)。
| 繼承方式 | 基底類別 public | 基底類別 protected | 基底類別 private |
|---|---|---|---|
public 繼承 | public | protected | 不可存取 |
protected 繼承 | protected | protected | 不可存取 |
private 繼承 | private | private | 不可存取 |
protected 與 private 繼承會降低衍生類別中基底成員的存取層級。public 繼承保持原有層級,是最常用、最符合「is-a」關係的繼承方式。private/protected 成員,無論繼承方式為何。來源:「將弛直奔」博客,原文連結:https://cnmtjp.blog.51cto.com/204390/36548。