亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從類型訪問數據的更簡潔的方法

從類型訪問數據的更簡潔的方法

C#
侃侃爾雅 2023-06-25 14:16:31
所以,這是關于同一主題的兩個問題。我一直在尋找使我從類型中訪問數據更加干凈的方法。舉個例子,假設我正在創建某種Health類,并為其編寫一些字段。public class Character {? ? public Health Health;}public class Health {? ? public short Current;? ? public short Maximum;}Health.Current現在這可行了,但我正在尋找一種當我想獲得當前健康值時可以避免使用的方法。像這樣的東西:public class Health {? ? private short Current;? ? public short Maximum;? ? public short this {? ? ? ? get { return Current; }? ? ? ? set { Current= value; }?? ? }}我原以為這會起作用,但不幸的是它沒有。有什么辦法可以做到這一點嗎?如果沒有,那么有沒有一種方法可以實現這一點:public class Character {? ? public short Health;? ? public short Health.Maximum;}它將產生類似的預期效果。
查看完整描述

1 回答

?
三國紛爭

TA貢獻1804條經驗 獲得超7個贊

您可以將 health 類中的隱式運算符添加到返回當前值的 Short 中:


public class Health

{

    public static implicit operator short(Health health)

    { 

        return health.Current;

    }


    public short Current;

    public short Maximum;

}

像這樣使用它:


Health h = new Health { Current = 20, Maximum = 100};

short current = h;

Console.WriteLine(current); // 20


查看完整回答
反對 回復 2023-06-25
  • 1 回答
  • 0 關注
  • 134 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號