C# 隐式运算符泛型 minus/plus int
C# implicit operator generic minus/plus int
我在 C# 中有这个 class:
public class MyClass<A, B> where B : OtherClass<A>
{
[SerializeField] A _value = default;
public A Value
{
get => _value;
set => _value = value;
}
public static implicit operator A(MyClass<A, B> variable)
{
return variable.Value;
}
}
我真的很想能够做到这一点:
MyClass<int, OtherClass<int>> myVar = new MyClass<int, OtherClass<int>>();
myVar.Value = 5;
myVar -= 3; // this is actually not valid and I wish to make it valid.
有什么我不知道的方法吗?
如果您需要任何进一步的信息,请告诉我。
不,那不可能。由于甚至 有 一个 operator -
都没有接口,因此无法表达 A
必须有一个 operator -
。随着这种可能性的消失,无法创建自己的 operator -
调用 A
的运算符减号。
我在 C# 中有这个 class:
public class MyClass<A, B> where B : OtherClass<A>
{
[SerializeField] A _value = default;
public A Value
{
get => _value;
set => _value = value;
}
public static implicit operator A(MyClass<A, B> variable)
{
return variable.Value;
}
}
我真的很想能够做到这一点:
MyClass<int, OtherClass<int>> myVar = new MyClass<int, OtherClass<int>>();
myVar.Value = 5;
myVar -= 3; // this is actually not valid and I wish to make it valid.
有什么我不知道的方法吗?
如果您需要任何进一步的信息,请告诉我。
不,那不可能。由于甚至 有 一个 operator -
都没有接口,因此无法表达 A
必须有一个 operator -
。随着这种可能性的消失,无法创建自己的 operator -
调用 A
的运算符减号。