class Base
{
public:
//靜態成員屬於類 而不屬於對象
static int num;
static int data;
static void showData(void);
};
int Base::num = 100;
int Base::data = 200;
class Son:public Base
{
public:
static int data;//父和子類 靜態成員 同名
static void showData(void);
};
int Son::data = 300;
void test01()
{
//從Base類中訪問
cout<<Base::num<<endl;
// Son 也擁有了靜態成員num
cout<<Son::num<<endl;
//父和子類 靜態成員 同名 在子類中 訪問子類中的成員
cout<<Son::data<<endl;//200
//父和子類 靜態成員 同名 訪問父類中的成員 必須加 Base::
cout<<Son::Base::data<<endl;//200
//父和子類 同名靜態成員函數 子類默認訪問子類的靜態成員函數
Son::showData();
//父和子類 同名靜態成員函數 子類訪問父類的靜態成員函數 必須加 Base::
Son::Base::showData();
}
運行結果: