OC宏定义与const变量

实例:

#define AccountID @"771722918"

NSString* const AccountIDStr = @"771722918";

上面定义了一个宏与一个constr变量.

宏定义:每当用到AccountID就拷贝一次AccountID的值(771722918),意思就是:在一个项目里面用到多少次,就会拷贝多少次,就有多少的地址(当然了,是会随着作用域释放的).

const变量:在整个项目中,无论用到多少次,都是同一个值,同一块内存地址.

总结:在项目中使用const变量比使用宏定义的效率高.(前提:是一个'常量',rgb(r,g,b,a)这种是不可以的).

所以在项目中最好使用const变量.

但是,在使用const常量的时候.需要注意:在.m文件中定义,在.h文件中extern.具体原因,自己思考!

const.h

extern NSString* const AccountIDStr;

const.m

NSString* const AccountIDStr = @"771722918";

 

OK.TKS...

posted @ 2015-05-04 18:21  花园晓雨  阅读(350)  评论(0编辑  收藏  举报