iOS学习之静态变量 静态常量 全局变量 全局常量以及NSdataformatter的小优化技巧

iOS学习之静态变量 静态常量 全局变量 全局常量以及NSdataformatter的小优化技巧_第1张图片

staticNSString* twoShow =@"againShow";//静态变量作用域这个.m文件可以被修改

staticNSDateFormatter* datashow =nil;//我们希望这个类不只是作用于某个类的某一个作用区间而是作用于整个类的地方,这个时候我们可以采用静态变量

staticNSStringconst* showString =@"test1";

staticconstNSString* constString =@"test2";

staticNSString*consttestString =@"test3";

staticconstintp =4;

@interfaceViewController()

@end

@implementationViewController

- (void)viewDidLoad {

[superview DidLoad];

twoShow=@"WWWW";

datashow=[[NSDateFormatter alloc]init];

datashow.dateFormat=@"yyyy-MM-dd HH:mm:ss";//设置转换成字符串的格式

datashow.timeZone= [NSTimeZonelocalTimeZone];//设置时间为ipone的当前时区

[self getNowDateFor];

[self gofasetShow];//验证静态变量

[self test2];//验证静态常量

[self test3];

NSLog(@"nameShow:%@",nameShow);

NSLog(@"nnnnnnnn:%@",twoAgainShow);

}

-(void)test3{

//showData = @"wwwww";不可修改的全局常量

}

-(void)test2{

//p = 6;错误的写法

showString=@"wwww";

constString=@"ppppp";

//testString = @"wwwwww";不可改的静态常量

}

-(void)getNowDateFor

{

NSDate* date = [NSDatedate];

NSLog(@"%@",[datashowstringFromDate:date]);

}

-(void)gofasetShow

{

NSDate* date = [NSDatedate];

NSLog(@"%@",[datashowstringFromDate:date]);

}

以上是代码的测试以及部分说明 下面说一下extern的简单用法 extern分为全局变量和 全局常量

extern nstring * const test = @“托尔斯泰”;不可变的

extern nsstring  *test = @“aaa”可变的

在一个类的.h中声明

#import

externNSString* nameShow =@"pppppttt";

externNSString*consttwoAgainShow =@"nihua";

在另一个类中.h中声明
#import

externNSString* nameShow;

externNSString*consttwoAgainShow;

@interfaceViewController :UIViewController

@end

接下来 就可以在该类的.m中获取变量的值。第一个类相当于声明 第二个类相当于窗口,在这里获取声明的值,然后可以在.m 中直接获得这个值。

你可能感兴趣的:(iOS学习之静态变量 静态常量 全局变量 全局常量以及NSdataformatter的小优化技巧)