我有关于C#struct的问题。我通常使用类,通过struct,我可以覆盖=
运算符以进行赋值。
就我而言,我有struct
:
public struct ObjectWrap<T>
{
public T _value;
public ObjectWrap(T value)
{
_value = value;
}
public static implicit operator ObjectWrap<T>(T value)
{
return new ObjectWrap<T>(value);
}
}
(整个struct
代码不在那里)
通过这样做,可以做这样的事情:
ObjectWrap<String> d = "My value";
但是,可以通过调用struct
来访问我的struct
值成员,例如
!String.IsNullOrWhiteSpace(d)
否则,我要做一个访问者,而且它并不多,人性化的#34;。
答案 0 :(得分:0)
不确定。只需转动隐式运算符即可。顺便说一句,这也可以在课堂上发挥作用:
public static implicit operator T(ObjectWrap<T> value)
{
return value._value;
}
此示例使用传入类型T
作为返回值类型,因此这适用于T
提供的每种类型ObjectWrapper<T>
。