swift中的静态方法常量

时间:2014-08-21 15:50:01

标签: ios objective-c memory-management swift

在objective-c中我有这段代码

- (void)foo
{
    static NSString *identifier = @"Title";

    //some code
}

此代码允许为标识符分配一次内存,并仅在方法范围内使用它。当方法经常调用时,这非常有用。

我怎样才能迅速实现记忆经济?

1 个答案:

答案 0 :(得分:4)

从内存使用的角度来看,这可能不如省略static关键字那么理想。 static关键字表示必须始终分配内存,即使该函数从未被调用过,主要用于您希望在函数调用之间更改和维护的值。

也就是说,用例中最接近的等价物是使用“let”关键字,它告诉编译器它永远不会改变,并允许最大化优化自由:

func foo() {
    let identifier = "Title"
    ...
}