Zi 字媒體
2017-07-25T20:27:27+00:00
[C/C++基礎] C++繼承狀態表
本篇要分享-C++繼承狀態表,有興趣的(C/P)同好,歡迎來(C/P)一下哈哈 ^ ^。
C++繼承狀態表
繼承
原本
Public
Protected
Private
Public
子類的公有
子類的保護
子類的私有
Protected
子類的保護
子類的保護
子類的私有
Private
要用父類別存取
要用父類別存取
要用父類別存取
Ps
公有:可直接存取
私有:用公有存取
保護:用公有存取
個人習慣把父類別變數如下表分類
Input
Public
Output
Protected
Other
Private
測試程式碼如下
#include <iostream>
usingnamespacestd;
class parent
{
public:
parent();
int m_a;
protected:
int m_b;
private:
int m_c;
};
parent::parent()
{
m_a=0;
m_b=0;
m_c=0;
}
//============================================================
class public_son :public parent
{
public:
public_son();
void setvalue(int,int,int);
void showvalue();
};
public_son::public_son():parent()
{
}
void public_son::setvalue(int a,int b,int c)
{
m_a=a;
m_b=b;
//m_c=c;//必須利用父類別的公有函數才可��取
}
void public_son::showvalue()
{
cout<<"m_a="<<m_a<<endl;
cout<<"m_b="<<m_b<<endl;
//cout <必須利用父類別的公有函數才可以存取
}
//============================================================
//============================================================
class protected_son :protected parent
{
public:
protected_son();
void setvalue(int,int,int);
void showvalue();
};
protected_son::protected_son():parent()
{
}
void protected_son::setvalue(int a,int b,int c)
{
m_a=a;
m_b=b;
//m_c=c;//必須利用父類別的公有函數才可以存取
}
void protected_son::showvalue()
{
cout<<"m_a="<<m_a<<endl;
cout<<"m_b="<<m_b<<endl;
//cout <必須利用父類別的公有函數才可以存取
}
//============================================================
//============================================================
class private_son :private parent
{
public:
private_son();
void setvalue(int,int,int);
void showvalue();
};
private_son::private_son():parent()
{
}
void private_son::setvalue(int a,int b,int c)
{
m_a=a;
m_b=b;
//m_c=c;//必須利用父類別的公有函數才可以存取
}
void private_son::showvalue()
{
cout<<"m_a="<<m_a<<endl;
cout<<"m_b="<<m_b<<endl;
//cout <必須利用父類別的公有函數才可以存取
}
//============================================================
intmain()
{
cout<<"Hello world!"<< endl;
return0;
}
寫了
5860316篇文章,獲得
23313次喜歡