Как отмечает Тамас, withArg2
является частью имени метода.Если вы напишите функцию с точно таким же именем на C, она будет выглядеть следующим образом:
int methodNamewithArg2(int arg1, int arg2)
{
// Do something crazy!
return someInt;
}
Исходя из других языков программирования, синтаксис Objective-C сначала может показаться странным, но через некоторое время выначнёт понимать, как это делает весь ваш код более выразительным.Если вы видите следующий вызов функции C ++:
anObject.subString("foobar", 2, 3, true);
и сравниваете его с аналогичным вызовом метода Objective C
[anObject subString:"foobar" startingAtCharacter:2 numberOfCharacters:3 makeResultUpperCase:YES];
, должно быть ясно, что я имею в виду.Пример может быть надуманным, но суть в том, чтобы показать, что вложение значения следующего параметра в имя метода позволяет писать очень читаемый код.Даже если вы выберете ужасные имена переменных или будете использовать литералы (как в примере выше), вы все равно сможете разобраться в коде, не обращаясь к документации метода.