C# 修改CardLib以便使用泛型集合類
對(duì)創(chuàng)建的CardLib項(xiàng)目可以進(jìn)行簡(jiǎn)單的修改,即修改Cards集合類,以使用一個(gè)泛型集合類,這將減少許多行代碼。對(duì)Cards的類定義需要做如下修改(這段代碼包含在Chl2CardLib\Cards.cs文件中):
public class Cards : List<Card>, ICloneable { ... }
還可刪除Cards的所有方法,但CloneO和CopyToO除外,因?yàn)镃loneO是ICloneable需要的方法,而List<Card>提供的CopyTo()版本處理的是Card對(duì)象數(shù)組,而不是Cards集合。需要對(duì)Clone()做一些輕微的修改,因?yàn)長(zhǎng)ist<T>類沒有定義List屬性:
public object Clone()
{
Cards newCards = new Cards ();
foreach (Card sourceCard in this)
{
newCards.Add((Card)sourceCard.Clone());
}
return newCards;
}
這里沒有列出代碼,因?yàn)檫@是十分簡(jiǎn)單的修改,CardLib的更新版本為Chl2CardLib,它包含在下載代碼中。
點(diǎn)擊加載更多評(píng)論>>