对于static关键字,一般放于变量声明前,用于声明一个静态变量。
例如:一个静态局部变量,只在程序开始的时候初始化一次,在以后每次调用这个方法时,都会保存一次数据,下次调用这个方法的时候,次静态变量的的值为上一次保存的值,此方法执行完毕后,将重新记录一次数据。
三次调用后,值为- (void)test1 { static int i = 0; /* "static" 只在程序开始执行时初始化一次,并且会保持多次调用后的值,不再重新初始化 */ int j = 0; i++; j++; NSLog(@"i = %d", i); NSLog(@"j = %d", j); }
2011-12-12 16:28:09.105 MyDemo[19888:207] i = 1
2011-12-12 16:28:09.107 MyDemo[19888:207] j = 1
2011-12-12 16:28:09.107 MyDemo[19888:207] i = 2
2011-12-12 16:28:09.108 MyDemo[19888:207] j = 1
2011-12-12 16:28:09.108 MyDemo[19888:207] i = 3
2011-12-12 16:28:09.109 MyDemo[19888:207] j = 1