6.对象和方法之间的关系
对象作为方法的参数: @interface Person:NSObject{ int age; NSString *name; } -(void)print:(Person *)p; @end
@implementation -(void)print:(Person *)p{ NSLog(@“年龄 = %d,姓名 = %@”,p->age,p->name); }
@end
对象作为方法的返回值: -(Person *)changeName:(Person *)p{ p->name = “asd”; return p; } 调用时:Person *p = 【Person new】; 【p changeName:p】;
7.NSString常见方法
创建常量字符串: NSString * a = @“sdaf”; 创建空字符串,然后赋值: NSString *a = [NSString new]; a = @"asd"; 格式化创建字符串; 使用NSLog是不能打印c中的字符串的
NSString字符串长度计算:
通过调用NSString类的对象方法 length 可以获得字符串的长度。
NSString *a = @“adf”; NSLog(@“长度:%ld”, [a length]); 注意:
在C语言中,每个汉字占用3个字节,可以使用strlen计算。在OC中,length计算一个汉字长度为1。
8.OC多文件开发介绍
在工作中,通常把不同的类放到不同的文件中,每个类的声明和实现分开,声明写在.h头文件中, 实现写在相应的.m文件中去,类名是什么,文件名的前缀就是什么。
#import有两个作用: 一是和include一样,拷贝文件的内容; 二是可以自动防止文件内容的重复包含。
这也是编程思想的一种体现,可以说.h和.m文件时完全独立的,只是为了要求有较好的可读性,才要求两个文件的文件名一致, 这也是把接口和实现分离,让调用者不必去关心具体的实现细节。 Xcode是写一行编译一行,有简单的修复功能,红色是错误提示,黄色警告。 如果在程序中声明了一个变量,但是这个变量没有被使用也会产生警告信息。 在调试程序的时候,如果发现整个页面都没有报错,但是一运行就错误,那么一定是链接报错。
多文件开发的好处:提高代码的可读性。
|