当我尝试编译这个简单的代码时,我的构造函数中出现两个错误:“类型的值不能用作默认参数” 我该如何解决这个问题?
public class PointerArgs
{
public Point Point { get; set; }
public Point TransformedPoint { get; set; }
public PointerArgs(Point point = null, Point transformedPoint = null)
{
this.Point = point;
this.TransformedPoint = transformedPoint;
}
}
答案 0 :(得分:4)
您无法将Point
设置为null
,因为它是值类型。
这样做:
public PointerArgs(Point point = default(Point), Point transformedPoint = default(Point))
{
this.Point = point;
this.TransformedPoint = transformedPoint;
}
您可以通过将其设为Nullable
类型将其指定为null,但这不是必需的。