Как мне вернуть функцию CGpoint? - PullRequest
0 голосов
/ 16 июля 2010

Если у меня есть эта функция:

 -(CGPoint)limitPosition:(CGPoint)position {
          //code here

              return position;
      }

как мне вернуть ее в переменную?

Это:

CGPoint a;
CGPoint b;

a = [self limitPosition: b]; 

Не работает.

1 Ответ

3 голосов
/ 16 июля 2010

Без более четкого описания того, что вы подразумеваете под "не работает", и, вероятно, что происходит там, где у вас есть //code here, трудно сказать.

По сути, вы можете передавать CGPoint в функцию или метод с синтаксисом, как он есть. Он будет передан по значению , поэтому любые изменения position внутри функции не будут отражены в переменной, переданной в качестве аргумента (b), но должны быть скопированы обратно в возвращаемое значение (до a).

В показанном фрагменте кода вы не инициализируете a или b, поэтому они могут содержать мусор. И, очевидно, тело метода мало что делает. Но в остальном это выглядит кошерно, поэтому проблема, вероятно, в другом месте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...