在不使用点运算符的情况下访问Class属性
使用Double类型调用时,我需要重载一些运算符。 为了实现这一点,我正在创建一个inheritance自Double的类MyDouble。 MyDouble看起来有点像这样
class MyDouble : Double { Double value; // operator overloads go here }
我想从用户中抽象出value
属性,以便它可以像Double一样使用。 基本上我希望用户能够这样做:
MyDouble a = 5; //a.value gets assigned 5 Console.WriteLine(a); //prints a.value
我不希望用户必须专门定位value
属性。 这可能吗? 我该怎么办呢?
您可以定义隐式转换运算符,如下所示:
class MyDouble { public Value {get; private set;} public Double(double value) { Value = value; } // Other declarations go here... public static implicit operator double(MyDouble md) { return md.Value; } public static implicit operator MyDouble(double d) { return new MyDouble(d); } }
- Azure网站中的站点无法处理X509Certificate2
- 是什么决定了NavigationCommands.BrowseBack是否调用了页面构造函数?
- 需要C#中的BouncyCastle PGP文件加密示例
- 以优雅的方式合并两个IEnumerables
- 通过MVC3中的TempData将MemoryStream转换为IMG – 有更好的方法吗?
- 将NameValueCollection绑定到GridView?
- WebForms UnobtrusiveValidationMode需要一个用于jquery的ScriptResourceMapping
- c#:在运行时创建新设置
- 使用Task.Delay()的成本是多少?