可能重复:
在 C# 中重载赋值运算符
我记得我在堆栈溢出的某个地方看到了这个问题,但我找不到它。
基本上我希望能够做到:
MyClass myClass = 5;
其中 MyClass 是我的程序实现的类。
如果我能找到那个重复的问题,我会删除这个问题。
可能重复:
在 C# 中重载赋值运算符
我记得我在堆栈溢出的某个地方看到了这个问题,但我找不到它。
基本上我希望能够做到:
MyClass myClass = 5;
其中 MyClass 是我的程序实现的类。
如果我能找到那个重复的问题,我会删除这个问题。
我认为你想要一个隐式转换运算符。
public static implicit operator MyClass(int m)
{
// code to convert from int to MyClass
}
实现implicit
运算符。
试试这个:
public class MyClass
{
public int MyProperty { get; set; }
private MyClass(int i)
{
MyProperty = i;
}
public static implicit operator MyClass(int x)
{
return new MyClass(x);
}
}
MyClass myClass = 5;