/ / що це нове ключове слово "in" у swift 3 [дублікат] - swift, swift3

що це нове "в" ключове слово в швидкому 3 [дублікат] - швидкий, швидкий3

Я тільки що відкрив swift 2 проект з останньою версією Xcode. Xcode пропонують мені автоматично перетворити мій код на swift 3.

Ось щось дивне:

func numberOfSections(in tableView: UITableView) -> Int
{
return 1
}


func tableView(_ tableView: MyTableView,  numberOfRowsInSection section: Int) -> Int
{
return 10
}

Якщо ви подивитеся, Xcode додав ключове слово "in" для методу numberOfSections. Але він нічого не зробив для методу numberOfRowsInSection. Я не розумію чому.

Що таке ключове слово "in" у Swift 3?

Відповіді:

0 для відповіді № 1

Це не ключове слово. Це ім'я першого параметра в методі.

У Swift2 метод був ...

func numberOfSections(inTableView: UITableView) -> Int

... і буде називатися так ...

numberOfSections(tableView)

У Swift 3 багато уваги приділяється створеннюІмена функцій більш грунтуються на дієслові і видаляють надлишкові висновки або натякливі типи з імен методів. Крім того, тепер необхідний перший параметр методу.

Всі ці зміни призводять до оновлення імені до побаченого, а виклик стає ...

numberOfSections(in: tableView)

Докладніше про зміни в Swift 3 можна прочитати в Керівництво API для Apple.