注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

IOS & JAVA KEY

(iMilo)

 
 
 

日志

 
 
关于我

All the splendor in the world is not worth a good friend!! Hello my friend!!

网易考拉推荐

iOS-在objc项目中使用常量的最佳实践  

2011-05-22 09:09:03|  分类: IOS |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

之前,在在objc项目中使用常量中,使用c的预处理#define来设置常量。比如,可以做个头文件,然后在需要的类文件中import,使用常量。

但这不是最佳实践。这样做可能是最好的方式,首先在比如叫Constants.h的头文件中:

    #import <Foundation/Foundation.h>

 

    extern NSString * const kInitURL;

 

@interface Constants : NSObject

{

 

    }

 

    @end

 

这里使用到extern c关键字,表示这个变量已经声明,只是引用。const关键字表示变量是常量,不可修改。

objc的约定里,常量也是大小写混排的驼峰命名规则,首字母小写,另外,第一个字母是k

然后,在Constants.m文件中:

    #import "Constants.h"

 

    NSString * const kInitURL = @"http:// mmz06.blog.163.com";

 

    @implementation Constants

 

    @end

在这里给常量kInitURL赋值。

如何使用常量?只需在所需的m文件引入Constants头文件,下面是使用示例:

    #import "BasicDemosViewController.h"

    #import "Constants.h"

 

    @implementation BasicDemosViewController

 

- (void)loadView

{

        NSLog(@"load view: %@",kInitURL);

    }

使用这种方式,比通过宏预定义的优点是,可以对常量进行指针比较操作,这是#define做不到的。即:

[myURL isEqualToString:kInitURL];

 

转载至:iOS-objc项目中使用常量的最佳实践

 

  评论这张
 
阅读(695)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017