位置:首頁 > 軟件操作教程 > 編程開發(fā) > C# > 問題詳情

C# 修改CardLib以便使用泛型集合類

提問人:劉團(tuán)圓發(fā)布時(shí)間:2020-12-08

    對(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,它包含在下載代碼中。

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部