zoukankan      html  css  js  c++  java
  • iOS-static和const联合使用;使用static const 与 #define

    static和const联合使用:
       static将一个全局变量变成局部变量
       const将一个局部变量变成局部常量

          // 定义了一个局部常量
          static const CGFloat ZMJRed = 0.4;

    使用static const 与 #define:

        使用static const修饰变量和宏定义的比较
            相同点
                都不能再被修改
                一处修改,其它都改了
            不同点
                static const修饰变量只有一份内存
                宏定义,只是简单的替换,每次使用都需要创建一份内存
        结论
            使用static const修饰更加高效,在同一个文件内可以使用static const取代#define

        // static const修饰变量只有一份内存
        static const CGFloat ZMJRed = 0.4;

        // 宏定义,只是用0.4替换ZMJRed,每次使用都需要创建一份内存
        #define ZMJRed 0.4

    const实际开发的应用:

     一般会先新建ZMJConst.h文件专门存放常量的引用,网络url宏定义

    如: extern const CGFloat ZMJRed;
          extern NSString * const ZMJName;

     可以模仿系统UIKIT_EXTERN来代替extern,逼格更高!

      一般会新建ZMJConst.m文件专门存放 const修饰的变量,需要用的时候导入头文件就可以了。

    const CGFloat DMFontSize20 = 20.0f;

    NSString *const DMApp = @"xxxxx";

  • 相关阅读:
    移动混合开发
    H5嵌入APP后,原生APP与H5之间交互
    移动混合开发的 JSBridge
    CSS3中transition和animation区别的理解
    git 回滚到指定版本并推送到远程分支
    李刘玉前端开发简历
    vue+axios 前端实现登录拦截(路由拦截、http拦截)
    移动端bug
    隐藏滚动条
    flex布局中子元素宽度失效的问题
  • 原文地址:https://www.cnblogs.com/linxiu-0925/p/5364891.html
Copyright © 2011-2022 走看看