通过赋值初始化对象

本文关键字:对象 初始化 赋值 | 更新日期: 2023-09-27 18:13:34

如何赋予类型通过赋值进行初始化的能力,例如:

public struct WrappedByte
{
    private byte m_value;
}
//Usage:    
WrappedByte x = 0xFF;

通过赋值初始化对象

您需要使用自定义的隐式操作符。注意,这不仅仅适用于结构体。

public struct WrappedByte
{
    private byte m_value;
    public static implicit operator WrappedByte(byte b)
    {
        return new WrappedByte() { m_value = b };
    }
}

还要注意,这不仅仅适用于初始化;这意味着您可以在任何需要WrappedByte的位置提供byte。它还包括除初始化之外的赋值、方法参数等。