2014-10-26 4 views
3

Я пытаюсь полностью понять процесс создания объектов класса в Swift. Придерживаясь идеи MVC, у меня есть следующий простой класс для представления моей модели данных:Удалить экземпляры экземпляра в Swift

// Person.swift 

import Foundation 

class Person { 

    var first: String = "first" 
    var last: String = "last" 
} 

На мой взгляд контроллер У меня есть два IBOutlets подключен к UITextFields. Используя метод IBAction, я устанавливаю переменные first и last с текстом из текстовых полей.

// ViewController.swift 

import UIKit 

class ViewController: UIViewController { 

    @IBOutlet weak var firstName: UITextField! 
    @IBOutlet weak var lastName: UITextField! 

    // MARK: - Lifecycle 
    override func viewDidLoad() { 
     super.viewDidLoad() 
    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
    } 

    // MARK: - IBAction 
    @IBAction func addPerson(sender: AnyObject) { 

     let peep = Person() 
     peep.first = firstName.text 
     peep.last = lastName.text 
     println("\(peep.first) \(peep.last)") 
    } 
} 

Каждый раз, когда метод IBAction называется новый экземпляр класса Person создается. Для моего примера меня интересует только последний пример Person. Как удалить переменные переменных экземпляра?

ответ

3

Вам не нужно их удалять, они выпускаются для вас компилятором.

Вы создаете объект Person. Установка некоторых значений свойств, а затем печать. После этого объект выходит за пределы области видимости, и в этот момент, поскольку у вас нет других сильных ссылок на объект, он в конечном итоге будет выпущен.

Посмотрите руководство по ARC в Руководстве по быстрому программированию для объяснения локальных правил, применяемых к объектам жизни Swift с использованием ARC.

Смежные вопросы