Выпуск @property (копия) переменные экземпляра?

Закрытые методы

объект может иметь закрытые методы.

function Person(firstName, lastName) {
    this.firstName = firstName;
    this.lastName = lastName;

    // A private method only visible from within this constructor
    function calcFullName() {
       return firstName + " " + lastName;    
    }

    // A public method available to everyone
    this.sayHello = function () {
        alert(calcFullName());
    }
}

//Usage:
var person1 = new Person("Bob", "Loblaw");
person1.sayHello();

// This fails since the method is not visible from this scope
alert(person1.calcFullName());
6
задан fuzzygoat 30 November 2009 в 15:44
поделиться

3 ответа

Да, это правильно.

Реализация свойства вызовет release для предыдущего значения перед копированием нового значения, поэтому только управление памятью, о котором вам нужно беспокоиться, освобождает в методе dealloc , который вы делаете.

6
ответ дан 17 December 2019 в 02:30
поделиться

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

0
ответ дан 17 December 2019 в 02:30
поделиться

Выглядит правильно. Я бы обычно использовал неатомный , сохранял со свойствами NSString, хотя ...

РЕДАКТИРОВАТЬ: копировать это так.

0
ответ дан 17 December 2019 в 02:30
поделиться