靜態函數是類別方法,只存取靜態成員而不接收 this 指標;友元函數不屬於類,可以存取所有成員並接收 this 指標。
C 中靜態函數與友元函數的差異
#靜態函數
友元函數
表格總結
#特徵 | ||
---|---|---|
友元函數 | ||
#類別成員資格 | 是 | 不是 |
存取權限 | 類別靜態成員 | #類別所有成員 |
this 指標 | 不接收可以接收 | 宣告方式 |
#friend
關鍵字
實戰案例
######靜態函數範例:### 計算圓的面積###class Circle { public: static double calculateArea(double radius) { return 3.14 * radius * radius; } }; int main() { double radius = 5.0; double area = Circle::calculateArea(radius); cout << "圆的面积:" << area << endl; return 0; }######友元函數範例:### 列印私有成員的值###
class Student { private: int age; public: friend void printAge(Student& student); }; void printAge(Student& student) { cout << "年龄:" << student.age << endl; } int main() { Student student; student.age = 20; printAge(student); return 0; }
以上是C++ 靜態函式與友元函式有什麼不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!