класс на детской площадке против в файле программы

У меня есть вопрос о чем-то простом, что работает на игровой площадке, но не в проекте: (код игровой площадки ниже)

В проекте, где класс находится в отдельном быстром файле, при исправлении кода мне не будет отображаться имя пользователя.?

Как мне указать в программном файле и отдельном быстром файле, чтобы он работал?

Спасибо Роман

import UIKit

class human {
    var firstName = ""
    var lastName = ""
}

let person = human()

person.lastName = "Smith"
person.firstName = "Peter"

print (person.firstName)
print (person.lastName)

1 ответ

Решение

Вот почему я ненавижу детские площадки. Они не совсем Свифт. В реальном Swift весь исполняемый код должен находиться внутри функции (например, метода некоторого класса, структуры или перечисления); у вас не может быть таких строк, какperson.lastName = "Smith" просто висит в космосе вот так.

Итак, в реальном проекте iOS вам нужно будет написать что-то вроде этого:

class Human {
    var firstName = ""
    var lastName = ""
}

func test() {

    let person = Human()

    person.lastName = "Smith"
    person.firstName = "Peter"

    print (person.firstName)
    print (person.lastName)

}

И даже тогда ничего не произойдет, пока вы не позвоните test(), и вы не можете этого сделать, кроме как в функции. Вот почему люди обычно тестируют код вviewDidLoad контроллера представления.

class Human {
    var firstName = ""
    var lastName = ""
}
class ViewController : UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        let person = Human()

        person.lastName = "Smith"
        person.firstName = "Peter"

        print (person.firstName)
        print (person.lastName)

    }
}
Другие вопросы по тегам