使用類建立物件

2021-09-28 14:37:40 字數 3795 閱讀 8325

;//摸牌

void

initcards()

;//初始化packcards surpluscards currcards

void

showinfo()

;void

showcards

(const vector<

int>&)

;//顯示牌面

protected

:private

: string m_nickname;

string m_***;

int m_gold;

long m_exp;

vector<

int> packcards;

//原始牌,從1到54

vector<

int> surpluscards;

//摸牌後,剩餘的牌

vector<

int> currcards;

//當前玩家的手牌陣列

bool

iscontains

(int);

//剩餘牌中是否包含cardnums這個牌面

void

deletecard

(vector<

int>&,

int)

;//刪除集合中的數字

string getcolor

(int);

//獲得牌的花色

string getvalue

(int);

//獲得牌面};

#endif

// landowner_h

#include

"landowner.h"

#include

#include

#include

#include

#include

#include

using

namespace std;

landowner::

landowner()

landowner::

landowner

(string nickname)

:m_nickname

(nickname)

landowner::

landowner

(string nickname, string ***,

int gold,

long exp)

:m_nickname

(nickname)

,m_***

(***)

,m_gold

(gold)

,m_exp

(exp)

void landowner::

showinfo()

void landowner::

initcards()

//初始化packcards surpluscards currcards

currcards.

clear()

;//showcards(packcards);

}void landowner::

showcards

(const vector<

int>

& cards)

//顯示牌面

*//*//法二 使用迭代器

for(vector::const_iterator iter = cards.begin(); iter != cards.end(); iter++)

*//*//法三 使用迭代器的簡寫方式 c++11的型別推斷功能auto

for(auto iter = cards.begin(); iter != cards.end(); iter++)

*//*//法四 c++11的for區間遍歷

for(auto card : cards)

*//* //使用演算法的方式,將容器的內容複製到cout繫結的迭代器中

//需要匯入標頭檔案 #include#includecopy(cards.cbegin(),cards.cend(),ostream_iterator(cout,", "));

*/for(

auto card : cards)

cout << endl;

}void landowner::

touchcard

(int cardcount)

//摸牌

else

} cout <<

"地主摸牌 當前手牌如下: \n"

;showcards

(currcards)

; cout <<

"\n********************\n地主摸牌後 剩餘牌面如下: \n"

;showcards

(surpluscards);}

bool landowner::

iscontains

(int cardnum)

else

}void landowner::

deletecard

(vector<

int>

& cardvec,

int card)

}string landowner::

getcolor

(int card)

//獲得牌的花色

;return colors[

(card-1)

/13];

//因為card不是下標,card-1才是下標

}string landowner::

getvalue

(int card)

//獲得牌面

使用類建立物件

棧記憶體中建立 類似宣告變數 自定義型別名 物件名 引數列表 student stu student stu 注意 1 stu物件由系統建立並釋放,不用擔心會出現記憶體洩漏 2 生命週期只在宣告區域的大括號內 3 棧記憶體的優勢是訪問速度比較快 僅次於暫存器 缺點是在棧中的資料大小與生存期必須是確定...

建立類 物件

二 用大括號建立物件 三 定義多個變數 四 引用 class number 構造方法 class number 例項方法 num 例項化物件 構造方法 class number 例項方法 num 例項化物件 var n1 newnumber 1 2 n1.num 1 console.log n1.i...

類和物件 建立物件

在物件導向程式設計中,物件是乙個非常重要的核心概念。從程式設計的角度來看,物件是物件導向方式的最基本單位,也是描述客觀事物的獨立的實體。建立物件的過程稱為例項化,當乙個物件被建立後,就包含了3個方面的特性 物件的控制代碼 屬性和方法。如果要使用某個類,首先要使用關鍵字 new 來建立該類的例項化物件...