在C#中,这是有效的语法:
int[] numbers = {1, 2, 3, 4, 5};
我正在尝试对对象的属性使用类似的语法:
MyClass myinst = new MyClass(); // See Class Definition below
myinst.MinMax = {-3.141, 3.141}; // Invalid Expression
myinst.MinMax = new double[]{-3.141, 3.141}; // Works, but more verbose
我可以做一些想要的语法吗?
类定义
class MyClass
{
public double[] MinMax
{
set
{
if (value.Length != 2) throw new ArgumentException();
_yMin = value[0];
_yMax = value[1];
}
}
};
最佳答案
double
语法是多余的,因为可以通过属性的类型来推断数组的类型,所以您可以做的最好的是:
myinst.MinMax = new[] {-3.141, 3.141};
关于c# - 在C#属性上使用初始化程序语法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19372863/