Heim >Backend-Entwicklung >C++ >Was ist der Unterschied zwischen statischen C++-Funktionen und Friend-Funktionen?
Statische Funktionen sind Klassenmethoden, die nur auf statische Mitglieder zugreifen und diese Zeiger nicht empfangen. Freundfunktionen gehören nicht zu Klassen und können auf alle Mitglieder zugreifen und diese Zeiger empfangen.
Der Unterschied zwischen statischen Funktionen und Friend-Funktionen in C++
Statische Funktionen
Freundfunktion
Tabellenzusammenfassung
Funktionen | Statische Funktionen | Freundefunktionen |
---|---|---|
Klassenmitgliedschaft | .Ja | Nicht |
Zugriff | Klasse statisch Mitglieder | Alle Mitglieder der Klasse |
dieser Zeiger | kann nicht empfangen werden | |
statische | Schlüsselwörter | FreundSchlüsselwörter |
Statisches Funktionsbeispiel:
Berechnen Sie die Fläche eines Kreisesclass 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;
}
Drucken Sie den Wert eines privaten Mitgliedsclass 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;
}
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen statischen C++-Funktionen und Friend-Funktionen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!