c++ 對(duì)象基礎(chǔ)(一)

Ref

cppreference - inline
cppreference - classes

類包含數(shù)據(jù)(變量)成員和函數(shù)成員霹琼,數(shù)據(jù)成員又分為靜態(tài)數(shù)據(jù)、動(dòng)態(tài)數(shù)據(jù)倔矾;函數(shù)成員分為靜態(tài)函數(shù)非靜態(tài)函數(shù)驼抹。

類實(shí)例

類實(shí)例可以叫做對(duì)象,類是抽象的描述描述一類事物的特征竟坛,實(shí)例是具體存在的某個(gè)類實(shí)體闽巩,如例:Dog是一個(gè)類钧舌,a是這個(gè)類的一個(gè)實(shí)例。

class Dog{
public:
    Dog(int t,string n,string c):tail(t),name(n),color(c){}
    int tail;
    string name;
    string color;
};

Dog a(18,"da huang","yellow");

數(shù)據(jù)

靜態(tài)數(shù)據(jù)
static 修飾的數(shù)據(jù)成員是靜態(tài)數(shù)據(jù)成員涎跨,屬于類的屬性洼冻,既可以通過(guò)類名訪問(wèn)如 A::st_var,也可以通過(guò)類實(shí)例訪問(wèn)如 a.st_var 隅很。存儲(chǔ)在數(shù)據(jù)段撞牢,只有一份,可以看作全局變量外构。

非靜態(tài)數(shù)據(jù)
非靜態(tài)數(shù)據(jù)屬于對(duì)象屬性普泡,只能通過(guò)對(duì)象來(lái)進(jìn)行訪問(wèn)。與對(duì)象同在审编,是對(duì)象的一部分撼班。

函數(shù)(方法)

靜態(tài)函數(shù)成員
static 修飾的函數(shù)成員,是類的函數(shù)垒酬,通過(guò)類或者類實(shí)例都可以訪問(wèn)砰嘁。存儲(chǔ)在代碼段。

非靜態(tài)函數(shù)成員
只能通過(guò)對(duì)象來(lái)進(jìn)行調(diào)用勘究,存儲(chǔ)在代碼段矮湘。

默認(rèn)函數(shù)

class Foo{
public:
    int a;
    int b;
}

類一般都要具有以下6個(gè)函數(shù),如上例

  1. 構(gòu)造函數(shù) default_constructor
  2. 析構(gòu)函數(shù) destructor
  3. 拷貝構(gòu)造函數(shù) copy_constructor
  4. 拷貝賦值函數(shù) copy_assignment
  5. 移動(dòng)構(gòu)造函數(shù) C++11新 move_constructor
  6. 移動(dòng)賦值函數(shù) C++11新 move_assignment

調(diào)用時(shí)機(jī)

  1. 構(gòu)造函數(shù):顯式定義類對(duì)象口糕。
  2. 析構(gòu)函數(shù):生存期結(jié)束缅阳。
  3. 拷貝構(gòu)造函數(shù):使用類對(duì)象來(lái)構(gòu)造/初始化對(duì)象;類對(duì)象參數(shù)傳遞景描;函數(shù)返回值為類對(duì)象時(shí)十办。如 A a(b); A a=b;
  4. 拷貝賦值函數(shù):使用類對(duì)象賦值給對(duì)象超棺。如 a=b;//a,b都已經(jīng)存在向族。
  5. 移動(dòng)構(gòu)造函數(shù):使用右值引用構(gòu)造/初始化對(duì)象。A a(std::move(b));
  6. 移動(dòng)賦值函數(shù):使用右值引用賦值給對(duì)象棠绘。a=std::move(b);

內(nèi)聯(lián)函數(shù)
inline 關(guān)鍵字修飾的函數(shù)件相。

inline 關(guān)鍵詞的本意是作為給優(yōu)化器的指示器,以指示優(yōu)先采用函數(shù)的內(nèi)聯(lián)替換而非進(jìn)行函數(shù)調(diào)用氧苍,即并不執(zhí)行將控制轉(zhuǎn)移到函數(shù)體內(nèi)的函數(shù)調(diào)用 CPU 指令夜矗,而是代之以執(zhí)行函數(shù)體的一份副本而無(wú)需生成調(diào)用。這會(huì)避免函數(shù)調(diào)用的開(kāi)銷(傳遞實(shí)參及返回結(jié)果)让虐,但它可能導(dǎo)致更大的可執(zhí)行文件紊撕,因?yàn)楹瘮?shù)體必須被復(fù)制多次。

因?yàn)殛P(guān)鍵詞 inline 的含義是非強(qiáng)制的澄干,編譯器擁有對(duì)任何未標(biāo)記為 inline 的函數(shù)使用內(nèi)聯(lián)替換的自由逛揩,和對(duì)任何標(biāo)記為 inline 的函數(shù)生成函數(shù)調(diào)用的自由。這些優(yōu)化選擇不改變上述關(guān)于多個(gè)定義和共享靜態(tài)變量的規(guī)則麸俘。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末辩稽,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子从媚,更是在濱河造成了極大的恐慌逞泄,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,548評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件拜效,死亡現(xiàn)場(chǎng)離奇詭異喷众,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)紧憾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門到千,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人赴穗,你說(shuō)我怎么就攤上這事憔四。” “怎么了般眉?”我有些...
    開(kāi)封第一講書人閱讀 167,990評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵了赵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我甸赃,道長(zhǎng)柿汛,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書人閱讀 59,618評(píng)論 1 296
  • 正文 為了忘掉前任埠对,我火速辦了婚禮络断,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘鸠窗。我一直安慰自己妓羊,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,618評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布稍计。 她就那樣靜靜地躺著躁绸,像睡著了一般。 火紅的嫁衣襯著肌膚如雪臣嚣。 梳的紋絲不亂的頭發(fā)上净刮,一...
    開(kāi)封第一講書人閱讀 52,246評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音硅则,去河邊找鬼淹父。 笑死,一個(gè)胖子當(dāng)著我的面吹牛怎虫,可吹牛的內(nèi)容都是我干的暑认。 我是一名探鬼主播困介,決...
    沈念sama閱讀 40,819評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蘸际!你這毒婦竟也來(lái)了座哩?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 39,725評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤粮彤,失蹤者是張志新(化名)和其女友劉穎根穷,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體导坟,經(jīng)...
    沈念sama閱讀 46,268評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡屿良,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,356評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了惫周。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片尘惧。...
    茶點(diǎn)故事閱讀 40,488評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖递递,靈堂內(nèi)的尸體忽然破棺而出褥伴,到底是詐尸還是另有隱情,我是刑警寧澤漾狼,帶...
    沈念sama閱讀 36,181評(píng)論 5 350
  • 正文 年R本政府宣布重慢,位于F島的核電站,受9級(jí)特大地震影響逊躁,放射性物質(zhì)發(fā)生泄漏似踱。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,862評(píng)論 3 333
  • 文/蒙蒙 一稽煤、第九天 我趴在偏房一處隱蔽的房頂上張望核芽。 院中可真熱鬧,春花似錦酵熙、人聲如沸轧简。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,331評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)哮独。三九已至,卻和暖如春察藐,著一層夾襖步出監(jiān)牢的瞬間皮璧,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,445評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工分飞, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留悴务,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,897評(píng)論 3 376
  • 正文 我出身青樓譬猫,卻偏偏與公主長(zhǎng)得像讯檐,于是被迫代替她去往敵國(guó)和親羡疗。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,500評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容