首頁 >後端開發 >C++ >如何在 C 中從衍生類別呼叫父類別函數?

如何在 C 中從衍生類別呼叫父類別函數?

Patricia Arquette
Patricia Arquette原創
2024-12-21 10:03:11315瀏覽

How Do I Call Parent Class Functions from Derived Classes in C  ?

在衍生類別中呼叫父類別函數

在C 中,程式碼的重複使用性和繼承性是透過衍生類別繼承方法和屬性的概念來實現的來自他們的父類別。這就提出瞭如何在衍生類別中呼叫父類別函數的問題。

直接呼叫父類別函數

如果父類別函數沒有宣告為 private,則衍生類別可以自動存取。因此,您可以直接從衍生類別方法呼叫父函數,而無需任何特殊語法。

例如,請考慮以下程式碼:

class Parent {
public:
  void print() { std::cout << "Parent class print function" << std::endl; }
};

class Child : public Parent {
public:
  void printWithParent() {
    print();  // Inherits from Parent and can be called directly
  }
};

呼叫父函數歧義解

如果父類別和衍生類別中都存在具有相同簽名的函數,則有潛在的問題含糊不清。要解決此問題,您可以使用下列語法明確指定父類別:

parent_class::function_name(...);

例如,如果Child 也定義了print() 函數,則可以如下消除歧義:

class Child : public Parent {
public:
  void print() { std::cout << "Child class print function" << std::endl; }
  void printWithParent() {
    Parent::print();  // Calls the Parent class print function
  }
};

結論

在C 中從衍生類別呼叫父類別函數非常簡單。透過遵循這些準則,您可以有效地利用繼承並實現程式碼的可重複使用性和可維護性。

以上是如何在 C 中從衍生類別呼叫父類別函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn