object-c的静态变量(static)
来源:互联网 发布:JAVA对象哈希值 编辑:程序博客网 时间:2024/06/05 07:31
object-c的"+"类似于C++中的静态函数,它可以访问由static声明的变量。实例如下:
1. 代码:
//ClassA.h
#import <Foundation/NSObject.h>
static int count;
@interface ClassA: NSObject
+(int) initCount;
+(void) initialize;
@end
////ClassA.m
#import "ClassA.h"
@implementation ClassA
-(id) init {
self = [super init];
count++;
return self;
}
+(int) initCount {
return count;
}
+(void) initialize {
count = 0;
}
@end
//main.m
#import "ClassA.h"
#import <stdio.h>
int main( int argc, const char *argv[] ) {
ClassA *c1 = [[ClassA alloc] init];
ClassA *c2 = [[ClassA alloc] init];
// print count
printf( "ClassA count: %i\n", [ClassA initCount] );
ClassA *c3 = [[ClassA alloc] init];
// print count again
printf( "ClassA count: %i\n", [ClassA initCount] );
[c1 release];
[c2 release];
[c3 release];
return 0;
}
运行结果:
ClassA count: 2
ClassA count: 3
2.说明:
(1)initialize 是被自动调用的,而且只调用一次;
(2)initCount可以访问count。
- object-c的静态变量(static)
- C/C++面试题:static(静态)变量的作用
- C语言的静态变量声明static
- C语言 静态变量static的用法
- static(静态)变量
- C++(二)全局变量、局部变量及静态变量(static)的区别
- static 变量(静态变量)
- static(静态)变量的作用
- 【C语言】局部变量、全局变量,局部静态变量,全局静态变量,extern,static的区别
- c中static静态变量与全局变量的区别
- C++中关于静态对象的使用( local static object and global static object)
- C++中关于静态对象的使用( local static object and global static object)
- static静态变量的理解
- static静态变量的理解
- static静态变量的理解
- static静态变量的理解
- static静态变量的理解
- static静态变量的理解
- 第三章数程序设计初步--控制结构综合项目2-2输出千以内的素数
- hdu4288(线段树)
- Android中ListView的各种显示效果
- 刚子扯个蛋 说下增、删、改、查
- android 开发环境配置
- object-c的静态变量(static)
- 10个步骤让你成为高效的Web开发者
- Hdoj1863畅通工程
- sqlserver数据库连接池配置和运用总结
- UESTC 1711 Divide 解题报告
- 第四章 从头到尾彻底解析Hash 表算法
- oracle发生重启动的介绍
- C++_友元函数
- On-Disk还是In-Memory:两种数据库对比