在C++中,類的繼承、覆蓋和隱藏是面向對象編程的重要概念
class Base {
public:
void foo() {
// ...
}
};
class Derived : public Base {
// ...
};
class Base {
public:
virtual void foo() {
// ...
}
};
class Derived : public Base {
public:
void foo() override {
// ...
}
};
class Base {
public:
void foo() {
// ...
}
};
class Derived : public Base {
public:
void foo() {
// ...
}
};
總結一下,繼承是一種創建新類的方式,允許子類重用父類的代碼;覆蓋是指子類重新定義了父類中的虛函數,實現多態性;隱藏是指子類中的函數與父類中的非虛函數同名,導致子類對象只能訪問子類中的實現。