静的関数は、静的メンバーにのみアクセスし、このポインターを受け取りません。フレンド関数はクラスに属さず、すべてのメンバーにアクセスしてこのポインターを受け取ります。
#C における静的関数とフレンド関数の違い
#静的関数
クラスに属しますが、特定のオブジェクトには属しません。クラス メソッドと呼ぶこともできます。どのクラスにも属しません。
静的関数 | #フレンド機能 | ##クラスのメンバーシップ |
---|---|---|
#アクセス権 | クラスの静的メンバー | クラスのすべてのメンバー |
このポインター | 受け付けられない | 受け付けられる |
宣言方法 | static | キーワード|
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 中国語 Web サイトの他の関連記事を参照してください。