Andy--清风

总有一种东西能让你一直为他奋斗终身, 永不孤独寂寞
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

(1)在object-c中,用#import来代替C语言中的#include;

在一般的头文件中都会用#import<Foundation/Foundation.h>;

Foundation框架是一个处理用户界面之下的层中的特性,Foundation为cocoa框架的子集,cocoa框架还包括Application Kit框架。

 

(2)NSLog

此命令是向控制台显示输出语句,跟c语言的printf()很相似,比如:

NSLog(@”Hello World!”);则是在控制台输出HelloWorld!双引号中的字符串前有一个@符号,这表示引用的字符串应该作为Cocoa的NSString元 素来处。前面的NS代表你这个函数是来自Cocoa而不是其他工具包,这是苹果公司的习惯问题,为了保存之前代码的兼容性,才继续采用NS前缀。

 

(3)数据类型

object-c支持的类型有:

布尔类型(boolean):他具有YES和NO两个值,与c语言的true和false类似。

例如:Booleanrunning;

对象类型:在object-c中,一个对象包含了数据和一组操作,这组操作可以使用或是修改对象的数据。

id:在object-c中,对象标识被作为一个特殊的数据类型:id。这个数据类型定义为引用对象的指针。实际上是指向对象实例变量的指针。

例如:idlight;

id和对象类型的比较

1,id关键字在编译时不被检查,而NSObject在编译时会被检查是否被调用一些错误方法。

2,id可以是任何对象,包括非NSObject对象

3,定义id的时候不使用*,NSObject却需要。

 

字符串类型(NSString):

例如:NSString*aString = @“我是一个NS字符串”;

或者可以这样创建: NSString *aString = [[NSString alloc] initWithFormat:@"这也是个NS字符串!"];

*initWithFormat是其中一个初始化方法,常用的还有

//从一个文件读取需要的内容

- (id)initWithContentsOfFile:(NSString *)pathencoding:(NSStringEncoding)enc error:(NSError **)error

//从一个地址读取需要的内容

 -(id)initWithContentsOfURL:(NSURL *)urlencoding:(NSStringEncoding)enc error:(NSError **)error

*以上方法得到的NSString的retain值为1,所以要记得release掉(retain和release下次讲)

 

其他类型则与c语言具有较大的相似性,所以这里就不讲了。