Essential C++ Capter 4 Object-Based Programming

  • Class由兩部分構(gòu)成:一組公開的操作函數(shù)和運(yùn)算符,以及一組私有的實(shí)現(xiàn)細(xì)節(jié)
  • 這些操作函數(shù)和運(yùn)算符被稱為class's member function鳄炉,并代表這個(gè)class的公開接口
  • stack是計(jì)算機(jī)科學(xué)中十分基礎(chǔ)的一個(gè)抽象概念,它允許我們疊放許多數(shù)值,并以后進(jìn)先出(last-in, first-out, LIFO)順序取出
  • class定義式由兩部分組成:class的聲明障癌,以及緊接在聲明之后的主體
class Stack{
public:
//任何操作函數(shù)如果執(zhí)行成功,就返回true
//pop和peek會(huì)將字符串內(nèi)容置于elem內(nèi)
bool push( const string& );
bool pop(  string &elem );
bool peek( string &elem );

bool empty();
bool full();

//size()定義于class本身內(nèi)
//其他members則僅僅只是聲明
int size() {return _stack.size();}

private:
vector<string> _stack;

};
inline bool
Stack::empty()
{
    return _stack.empty();
}

bool
Stack::pop( string &elem )
{
    if( empty() )
    return false;

    elem = _stack.back();
    _stack.pop_back();
    return true;
}

inline bool Stack::full()
{return _stack.size() == _stack.max_size(); }

bool Stack::peek(string &elem)
{
    if( empty() )
    return false;

    elem = _stack.back();
    return true;
}

bool Stack::push( const string &elem)
{
    if( full() )
    return false;

    _stack.push_back( elem );
    return true;
}
  • class 名稱之后的兩個(gè)冒號(hào)(::)是所謂的class scope resolution運(yùn)算符
  • Stack class 的定義和其empty()函數(shù)定義都應(yīng)該置于Stack.h頭文件中
  • non-inline member functions 應(yīng)該在程序代碼文件中定義辩尊,該文件通常和class同名涛浙,其后接著擴(kuò)展名 .c .cc .cpp .cxx
    2020/03/31
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請(qǐng)通過簡(jiǎn)信或評(píng)論聯(lián)系作者摄欲。
  • 序言:七十年代末轿亮,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子胸墙,更是在濱河造成了極大的恐慌我注,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,104評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件迟隅,死亡現(xiàn)場(chǎng)離奇詭異但骨,居然都是意外死亡励七,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門奔缠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來掠抬,“玉大人,你說我怎么就攤上這事校哎×讲ǎ” “怎么了?”我有些...
    開封第一講書人閱讀 168,697評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵贬蛙,是天一觀的道長(zhǎng)雨女。 經(jīng)常有香客問我,道長(zhǎng)阳准,這世上最難降的妖魔是什么氛堕? 我笑而不...
    開封第一講書人閱讀 59,836評(píng)論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮野蝇,結(jié)果婚禮上讼稚,老公的妹妹穿的比我還像新娘。我一直安慰自己绕沈,他們只是感情好锐想,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,851評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著乍狐,像睡著了一般赠摇。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上浅蚪,一...
    開封第一講書人閱讀 52,441評(píng)論 1 310
  • 那天藕帜,我揣著相機(jī)與錄音,去河邊找鬼惜傲。 笑死洽故,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的盗誊。 我是一名探鬼主播时甚,決...
    沈念sama閱讀 40,992評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼哈踱!你這毒婦竟也來了荒适?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,899評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤开镣,失蹤者是張志新(化名)和其女友劉穎吻贿,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體哑子,經(jīng)...
    沈念sama閱讀 46,457評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡舅列,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,529評(píng)論 3 341
  • 正文 我和宋清朗相戀三年肌割,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片帐要。...
    茶點(diǎn)故事閱讀 40,664評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡把敞,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出榨惠,到底是詐尸還是另有隱情奋早,我是刑警寧澤,帶...
    沈念sama閱讀 36,346評(píng)論 5 350
  • 正文 年R本政府宣布赠橙,位于F島的核電站耽装,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏期揪。R本人自食惡果不足惜掉奄,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,025評(píng)論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望凤薛。 院中可真熱鬧姓建,春花似錦、人聲如沸缤苫。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽活玲。三九已至涣狗,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間舒憾,已是汗流浹背镀钓。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留珍剑,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,081評(píng)論 3 377
  • 正文 我出身青樓死陆,卻偏偏與公主長(zhǎng)得像招拙,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子措译,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,675評(píng)論 2 359

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