struct
/class 類名:繼承方式 基類,..
.//建構函式
~類名(
void
)//析構函式
返回值型別 函式名(形參表)
//成員函式
資料型別 m_變數名;
//成員函式
};
public
公有成員: 在任何位置都可以訪問,類的內部和外部都可以訪問
private
私有成員: 只有類的內部成員才可以訪問,不可以通過類的物件直接訪問,可以通過類的公有成員函式來訪問私有成員變數或者私有成員函式
在繼承特性中,基類的私有成員對於派生類(子類)成員和友元是不能訪問的
protected
保護成員只有類的內部成員才可以訪問,不能通過類的物件直接訪問,可以通過公有成員函式來訪問私有成員變數或者私有成員函式
在繼承特性中,基類的保護成員對於派生類成員和友元是可以訪問的
預設訪問屬性
struct
定義的類 預設的訪問屬性是public
class
定義的類 預設的訪問屬性是private
code
#include
using
namespace std;
//定義乙個描述學生物件的屬性和行為
//行為:成員函式
//屬性:成員數量
class
student
//行為二
void
sleep
(int hour)
//行為三
void
learn
(const string& course)
//行為四
void
who(
void
)public
:void
setname
(const string& newname)
void
setage
(int newage)
void
setno
(int newno)
private
://屬性
string m_name;
//姓名
int m_age;
//年齡
int m_no;
//學號};
intmain
(void
)
#include
using
namespace std;
class
stustu
(string &name,
int age,
int no)
:m_name
(name)
,m_age
(age)
,m_no
(no)
void
who(
)void
setname
(string& name)
private
: string m_name;
int m_age;
int m_no;};
intmain()
類名 物件(構造實參表)
;//建立物件,呼叫有參建構函式直接初始化
類名 物件 = 類名(構造實參表)
;//拷貝初始化,編譯器執行時會優化成上面那種,實際效果是等價的
類名 = 單個構造實參;
//單引數為乙個時,等價拷貝初始化
類名 物件陣列[元素個數]
=;
//建立
類名 *物件指標 =
new 類名(構造實參表)
;//new操作符分配記憶體後會自動呼叫建構函式,完成物件的建立和初始化;而如果是malloc只會分配記憶體,不會呼叫建構函式,不具備建立物件的能力.
//銷毀
delete 物件指標;
//delete會在delete物件時呼叫物件的析構函式
//建立
類名 *物件指標 =
new 類名[元素個數]
//銷毀
delete
物件指標;
物件指標 =
null
;//呼叫delete 會自動呼叫陣列中每個物件自己的析構函式,有幾個例項化物件就會呼叫幾次析構函式
C 從入門到放棄之 C 繼承基本語法
class struct 類名 繼承方式 基類,繼承方式 基類,類名 void 返回值型別 函式名 形參表 常屬性 異常說明 訪問控制限定符 資料型別 變數名 成員變數 include using namespace std class human void eat const string foo...
C 從入門到放棄之 C 函式
內聯函式 inline 函式是否構成過載關係與函式的返回值型別無關 通過函式指標呼叫過載關係的函式,由函式指標的型別決定匹配過載的版本 呼叫過載關係的函式時,編譯器會根據形參和實參的匹配程度,選擇最優的匹配版本,一般的匹配規則 完全匹配 常量轉換 公升級轉換 降級轉換 省略號轉換 在操作符過載函式 ...
Web安全從入門到「放棄」之pikachu環境部署
1.首先進行本地伺服器的搭建 先到官方 安裝xampp 安裝完後的軟體介面 如果開啟apache和mysql顯示錯誤的話,可以開啟日誌檢視錯誤資訊,點選logs開啟error.log日誌檢視。很大情況是埠錯誤,這時候可以修改埠,關於這個問題,網上有很多教程,這裡就不講解了 解壓pikachu.zip...