Как передать массив строк в качестве собственного аргумента функции? Компилятор говорит, что это не работает - PullRequest
0 голосов
/ 22 апреля 2019

У меня проблема с домашним заданием, которая говорит о создании функции, которая принимает массив строк в качестве аргумента и распечатывает приветствие для каждого из ваших друзей.

Первым шагом было создание массива, содержащегоимена некоторых из моих друзей, и вот что у меня здесь:

let friendsOfMine = ["Philip", "Sal", "June"]

func greetFriends(friendsOfMine) {
    for (index, friend) in  friendsOfMine.enumerated() {
        print("Hello \(friend)")
    }
}

greetFriends(friendsOfMine)

Когда я пытаюсь бежать, я получаю сообщение об ошибке:

статус выхода 1
main.swift: 34: 19: ошибка: неназванные параметры должны быть записаны с пустым именем '_' func

Моя задача заключается в следующем:

Использовать for-Цикл для выполнения этой задачи.

Я пытался использовать "_" для решения, но это не работает.Я попытался поместить значения (строки) моего массива в параметр функции в качестве аргумента, и он все еще не работает.

Я ожидаю, что результат будет:

Hello Philip
Hello Sal
Hello June

1 Ответ

1 голос
/ 22 апреля 2019

Ваше объявление greetFriends не имеет правильного синтаксиса для своего параметра.

Вы хотите что-то вроде:

func greetFriends(_ friends: [String]) {
    for (index, friend) in  friends.enumerated() {
        print("Hello \(friend)")
    }
}

Вам следует ознакомиться с главой Функции в книге Свифта (а также с остальной частью книги).

...