C++ 牌堆

2023-03-20 16:24 更新

上一章我們用到了對象的向量,我也提到可以把向量用作對象的實例變量。本章我們就來創(chuàng)建包含Card向量的Deck對象。

Deck結(jié)構(gòu)可以這樣定義:

struct Deck {
  apvector<Card> cards;

  Deck (int n);
};

Deck::Deck (int size)
{
  apvector<Card> temp (size);
  cards = temp;
}

實例變量名cards可以讓我們將Deck對象和它包含的Card向量區(qū)分開。

目前Deck定義中只有一個構(gòu)造函數(shù)。該構(gòu)造函數(shù)中先創(chuàng)建了局部變量temp,temp以size為參數(shù)調(diào)用apvector的構(gòu)造函數(shù)完成初始化。 然后將向量從temp復(fù)制到實例變量cards中。

現(xiàn)在,我們可以用下面語句創(chuàng)建一個撲克牌的牌堆:

Deck deck (52);

這是Deck對象的狀態(tài)圖: 

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號