ios5基础教程第六章例子疑问 你可以打印下条件中的这个对象,返回的应该是(null) 这里判断条件在给这个对象发送getter方法,由于对象并没有初始化,所以他的getter方法返回的也都是nil。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那既然是nil,那这样写self.yellowViewController.view应该有问题才对啊 而在oc中,nil就相当于c、c++中的NULL指针,一般释放对象后将对象置为nil非常重要,这样可以防止引用非法指针导致程序崩溃掉。[obj release];//此时obj的引用计数为0[obj someMethod];//程序崩溃[obj release];obj = nil;[obj someMethod];//obj此时为nil,但不会崩溃在objective-c中我们只用nil来检查程序的逻辑,而不用于判断对象是否为空来避免崩溃。这与c++是不同。objective-c在运行时会自动处理向nil对象发送消息(调用方法),不会报错崩溃掉。 那么比如@property (strong, nonatomic) BIDYellowViewController *yellowViewController;@property (strong, nonatomic) BIDBlueViewController *blueViewController;这样声明两个属性,并且yellowViewController指针没有分配内存的时候,即没有指向某个对象的时候,yellowViewController.view.superview ,即访问其中的成员变量会是个什么样的情况呢。 这是由于ios的编译器在处理已定义未使用的变量的时候会根据其类型设置一个默认值。如值类型,默认值为0 引用类型默认值为nil.你可以写代码测试一下。定义一个NSInteger的变量,然后再访问它,并打印它的值。你会发现打印出来的值为0,同样的对于指向对象的指针,打印出来的值为null. 这就是你在访问yellowViewController.view.superview 时未报错的原因。记住这句话,“向nil发送消息,不会导致程序异常” 是可以调用其成员变量。但是返回值是NULL。 谁知道tableview显示错位是怎么回事吗? uialertview问题 如何将程序上传到appstore上? opengles如何使用多个纹理采样? ios消息推送-APNS 大家在学习ios开发的时候,花过99刀购买开发者帐号吗 ? 请问大家上架产品前,进行代码混淆吗? 新人求助 保存照片时如何使用自定义名称或者保存后获取系统定义的照片名字 iOS 与 .net RSA加密 问题 本人想开发IPAD版客户系统,请问如何在XCODE5里操作代码生成控件呢?因为本人觉得IB确实不好控制,好容易操作错误 IOS越狱与没有越狱的区别,APP怎么去识别。
而在oc中,nil就相当于c、c++中的NULL指针,一般释放对象后将对象置为nil非常重要,这样可以防止引用非法指针导致程序崩溃掉。[obj release];//此时obj的引用计数为0
[obj someMethod];//程序崩溃[obj release];
obj = nil;
[obj someMethod];//obj此时为nil,但不会崩溃
在objective-c中我们只用nil来检查程序的逻辑,而不用于判断对象是否为空来避免崩溃。这与c++是不同。objective-c在运行时会自动处理向nil对象发送消息(调用方法),不会报错崩溃掉。
@property (strong, nonatomic) BIDYellowViewController *yellowViewController;
@property (strong, nonatomic) BIDBlueViewController *blueViewController;
这样声明两个属性,并且yellowViewController指针没有分配内存的时候,即没有指向某个对象的时候,
yellowViewController.view.superview ,即访问其中的成员变量会是个什么样的情况呢。
这是由于ios的编译器在处理已定义未使用的变量的时候会根据其类型设置一个默认值。如值类型,默认值为0 引用类型默认值为nil.你可以写代码测试一下。定义一个NSInteger的变量,然后再访问它,并打印它的值。你会发现打印出来的值为0,同样的对于指向对象的指针,打印出来的值为null. 这就是你在访问yellowViewController.view.superview 时未报错的原因。记住这句话,“向nil发送消息,不会导致程序异常”
是可以调用其成员变量。但是返回值是NULL。