zoukankan      html  css  js  c++  java
  • ObjectiveC中的static变量

    Java 、 C++ 语言中,在某个类中声明一个static 静态变量, 其他类中想使用它或者修改它 ,可以使用这个类的类名直接获得这个静态变量的对象,并且可以在其他类中任意修改这个变量的数值。 

    在Objective-C 中,声明的static静态变量在其他类中是不能通过类名直接访问的,它的作用域只能是在声明的这个.m文件中 。但是可以调用类的静态方法间接的修改静态变量的值。

    也就是说不能在.h文件中声明static变量,例如下面两种情况都是错的,是编译不过的

    @interface  MyClass
    {
          static  int totalNum;
    }
    @end
    
    或者
    
    static int totalNum;
    @interface MyClass
    @end

    但是可以再@implement 中声明static变量,或者之外都可以。

    静态变量在oc中常用作单例模式中,因为可以常驻内存。例如打开一个页面,发起一个请求,立即关掉页面,但是想请求处理依然可以完成,可以把数据请求和解析写成一个单例。 但是请求处理完成之后,在恰当的时机就该清除这个静态对象,以便节省内存。

  • 相关阅读:
    JS获取图片的缩略图,并且动态的加载多张图片
    小扬的马【未完成】
    小宇和小曾的字符串 【未完成】
    数据库笔记【转】
    分解质因数
    汉诺塔
    排列组合
    数字字符出现频率
    文章中字符数统计
    是否阶乘之和?
  • 原文地址:https://www.cnblogs.com/wilma/p/2842206.html
Copyright © 2011-2022 走看看