float imageHeight = [player texture].contentSize.height;
Вероятно, это то же самое, что и:
float imageHeight = [[player texture] contentSize].height;
Синтаксис точки переводит вызов соответствующего метода доступа к свойству, когда он применяется к указателям на объекты.Применительно к структурам это прямой доступ к одному из полей этой структуры.
Итак, если предположить, что [player texture]
возвращает указатель на объект (возможно, изображение), первое использование доступа к синтаксису точкисвойство этого объекта contentSize
.Если -contentSize
также возвращает указатель объекта, то следующее использование также будет преобразовано в вызов метода доступа.Более вероятно, однако, что свойство contentSize
является NSSize, а NSSize является структурой с полями width
и height
.Таким образом, второе использование точечного синтаксиса, скорее всего, извлекает поле height
из этой структуры.
Смешивание двух различных значений синтаксиса точек прекрасно работает для получения значения, но вывы получите ошибку, если попытаетесь использовать ее для установки значений.Если мои предположения в предыдущем абзаце верны, вы не можете сделать это:
[player texture].contentSize.height = 50;