我正在使用 Windows 窗体在 C# 中编写程序。我将 myPoint 声明为 myForm 的公共(public)数据成员。我将 foo 声明为 myForm 的一个私有(private)方法 (实际上它是一个点击事件),在这个方法中我需要写这样的东西:
if (myPoint.IsEmpty)
myPoint = new Point(//position);
else
{
//operation involving myPoint
myPoint = null; //WHICH RETURNS THE ERROR
}
我收到错误:'Point' 是不可为 null 的数据类型
我正在阅读一些关于动态内存管理的 Material ,但到目前为止我似乎没有找到任何关于这种情况的信息。我唯一能想到的就是将 Point 结构替换为自定义结构,这并不理想。有什么想法吗?
最佳答案
Point
是一个结构,因此它总是有一个值。您可以选择分配 Point.Empty
,或使用可空类型:
Point? p = null;
关于c# - 如何删除Point结构的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36404112/