17 繼承之同名處理

2022-08-20 12:03:10 字數 760 閱讀 8117

問題:當子類與父類出現同名的成員,如何通過子類物件,訪問到子類或父類中同名的資料呢 ?

#include using namespace std;

class base

int m_a;

void func()

};class son : public base

int m_a;

void func()

};// 同名的成員屬性

void test01()

//同名成員函式處理

void test02()

int main()

問題:繼承中同名的靜態成員在子類物件上如何進行訪問 ?

靜態成員和非靜態成員出現同名,處理方式一致

#include using namespace std;

class base

};int base::m_a = 100;

class son : public base

};int son::m_a = 200;

// 同名的靜態成員屬性

void test01()

{ // 1. 通過物件訪問

son s;

cout << "son 下 m_a = " << s.m_a <靜態成員屬性:編譯階段分配記憶體,所有物件共享同乙份資料,類內宣告,類外初始化

c 繼承中同名成員處理

所謂同名成員也就是 子類與父類 變數或者成員函式重名 看看以下 了解訪問方式 1 include2 using namespace std 34 class father512 void fun int x 13 17protected 18 intb 19private 20 intc 21 22...

C 繼承同名成員處理方式

問題 當子類與父類出現同名的成員,如何通過子類物件,訪問帶子類或父類中同名的資料?1.訪問子類同名成員 直接訪問即可 2.訪問父類同名成員 需要加作用域 示例 include using namespace std 繼承同名成員處理方式 class base void func void func ...

繼承同名靜態成員處理方式

問題 繼承中同名的靜態成員在子類物件上如何進行訪問?靜態成員和非靜態成員出現同名,處理方式一致。1.訪問子類同名成員 直接訪問即可 2.訪問父類同名成員 需要加作用域 include using namespace std 繼承中的同名靜態函式處理方式 class base static void ...