Чтобы проверить, является ли NULL путь, используйте оператор в ==
/!=
.
if (path != NULL)
CGPathAddLineToPoint(path, NULL, point.x, point.y);
Чтобы проверить, не содержит ли путь не ничего, используйте CGPathIsEmpty.
if (!CGPathIsEmpty(path))
CGPathAddLineToPoint(path, NULL, point.x, point.y);
Чтобы проверить, был ли перемещен точка пути, используйте CGPathGetCurrentPoint и сравнить с (0, 0).
if (!CGPointEqualToPoint(CGPathGetCurrentPoint(path), CGPointZero))
CGPathAddLineToPoint(path, NULL, point.x, point.y);
Конечно, это не может отличить действительно пустой путь и путь, который кто-то называется CGPathMoveToPoint(path, NULL, 0, 0)
на нем.
(На самом деле, почему вы должны заботиться? Просто создать новый путь, если вы хотите пустой.)
но есть много способов, чтобы написать это. многие люди также выбирают 'if (path)', 'if (path! = NULL)' и 'if (0! = path)' - все они дают одинаковые результаты. – justin