C 筆記 第四十七課 父子間的衝突 狄泰學院

2021-09-02 01:39:28 字數 1636 閱讀 4645

子類中是否可以定義父類中的同名成員?如果可以,如何區分?如果不可以,為什麼?

#include#includeusing namespace std;

class parent

;class child : public parent

;int main()

子類可以定義父類中的同名成員

子類中的成員將隱藏父類中的同名成員

父類中的同名成員依然存在於子類中

通過作用域分辨符(::)訪問父類中的同名成員

訪問父類中的同名成員

執行結果

parent() :&mi = 0x7ffe2a97d3f0

child() :&mi = 0x7ffe2a97d3f4

&c.mi = 0x7ffe2a97d3f4

c.mi = 100

&c.parent::mi = 0x7ffe2a97d3f0

c.parent::mi = 1000

類中的成員函式可以進行過載

1.過載函式的本質為多個不同的函式

2.函式名和引數列表是唯一的標識

3.函式過載必須發生在同乙個作用域中

4.問題

子類中定義的函式是否能過載父類中的同名函式?

#include #include using namespace std;

class parent

void add(int a, int b)

};class child : public parent

void add(int a, int b)

void add(int x, int y, int z)

};int main()

執行結果

c.mi = 100

c.parent::mi = 1000

c.mi = 121

c.parent::mi = 1000

可以思考下這兩種情況下的執行結果

c.mi = 100

c.parent::mi = 1000

c.mi = 115

c.parent::mi = 1006

c.mi = 100

c.parent::mi = 1000

c.mi = 121

c.parent::mi = 1000

子類中的函式將隱藏父類的同名函式

子類無法過載父類中的成員函式

使用作用域分辨符訪問父類中的同名函式

子類可以定義父類中完全相同的成員函式

小結子類可以定義父類中的同名成員

子類中的成員將隱藏父類中的同名成員

子類和父類中的函式不能構成過載關係

子類可以定義父類中完全相同的成員函式

使用作用域分辨符訪問父類中的同名成員

LeetCode第四十七題 Python實現

title leetcode no.47 categories tags 給定乙個可包含重複數字的序列 nums 按任意順序 返回所有不重複的全排列。示例 1 輸入 nums 1,1,2 輸出 1,1,2 1,2,1 2,1,1 示例 2 輸入 nums 1,2,3 輸出 1,2,3 1,3,2 2...

python第四十七課 類屬性和函式屬性

4.類屬性和物件屬性 類屬性 定義在class內,函式外 物件屬性 定義在建構函式的內部 演示 類和物件的關係 生命週期 注意 類載入早,物件載入晚 晚的可以呼叫早的,早的不能呼叫晚的 類屬性和物件屬性class demo 類屬性 a 100 def init self,a self.a a def...

Leetcode第四十七題 全排列 II

題目 給定乙個可包含重複數字的序列,返回所有不重複的全排列。示例 輸入 1,1,2 輸出 1,1,2 1,2,1 2,1,1 個人思路 上一題加個去重,就多2行 官方答案推薦 差不多python class solution def permuteunique self,nums list int ...