Да, это не получится, если source
будет нулевым.
Вам нужно будет решить, каким должно быть правильное поведение, если source
равно нулю. Вы можете просто выбросить исключение.
public Point3 ( Point3? source )
{
if (source == null)
{
throw new ArgumentNullException("source");
}
this.X = source.Value.X;
this.Y = source.Value.Y;
this.Z = source.Value.Z;
}
Или, если вы не хотите принимать null
значения для source
, просто оставьте метод таким, как он есть в вашем примере. Этот метод не принимает Nullable<Point3>
, поэтому вам не нужно беспокоиться о том, что в этом случае null
.