美文网首页iOS
OC 中定义全局常量的方法

OC 中定义全局常量的方法

作者: freemanIT | 来源:发表于2017-09-26 11:50 被阅读0次

    使用 FOUNDATION_EXPORT 或者 #define方法来定义常量

    以上两种方法都能定义常量但是第一种
    .h 文件中

    FOUNDATION_EXPORT NSString * const kConstString;  
    FOUNDATION_EXPORT NSString * const kConstString2;
    
    FOUNDATION_EXPORT CGFloat const kTittlesViewH;
    FOUNDATION_EXPORT CGFloat const kTittlesViewY;
    

    .m 文件中

    NSString * const kConstString = @"Hello";
    NSString * const kConstString2 = @"World";
    
    CGFloat const kTittlesViewH = 35;
    CGFloat const kTittlesViewY = 64;
    

    另一种方法 #define kMyConstantString @"Hello"
    但是第一种方法更快, 效率更高, 原因是第一种比较的是指针地址, 第二种是比较每个字符串是否相等. 显而易见, 第一种速度更快

    还有另种是使用 static inline function

    一些调用频繁的简单函数, 也可以使用以上方式, 相比定义宏来说, 此方法可以进行编译检查, 防止出错. 例如

    static inline CGFloat screenWidth(){
        return [UIScreen mainScreen].bounds.size.width;
    }
    

    在其他地方调用即可

    相关文章

      网友评论

        本文标题:OC 中定义全局常量的方法

        本文链接:https://www.haomeiwen.com/subject/dyksextx.html