簡體   English   中英

C# 訪問基礎 class 的隱式運算符

[英]C# Access to implicit operators of base class

我有以下設置: Entity來自MonoBehaviour MonoBehaviour 實現了到 bool 的隱式轉換。 現在,如果我在 Entity 中實現到 bool 的隱式轉換,它會覆蓋 MonoBehaviour 中的轉換。 如果我現在想同時訪問舊轉換和新轉換,我必須轉換回基礎 class

public class Entity : MonoBehaviour 
{ 
    private float CurrentHealthPoints { get; set; }

    public static implicit operator bool(Entity entity) 
        => (MonoBehaviour)entity && entity.CurrentHealthPoints > 0;
}

現在我的問題是,有沒有一種不同的方法而不必轉換到基礎 class? 我嘗試使用base關鍵字,但無法正常工作。

據我所知,除非使用的類型使用逆變,否則顯式轉換是不可避免的。 您也可以使用該鏈接

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM