解决方案 »
- Mac桌面程序 app开发问题NSBrowser 用法
- 用扩展sdk的方式添加nsstring 的一个方法,要求,讲传进去的字符串变成大写,去掉所有的空格,将所有的字符a变成“;”
- 求助!!!!!请教一个PC上装mac虚拟机的问题
- tableView 下拉刷新,卡。
- 如何在tableView的第一列添加输入框?
- ios开发,自己做一个日历应用该怎么做,感觉无从下手,求指教
- 请问有没有方法不通过APNS,而用本地通知来直接接收远程的推送消息
- TextEditingDidBegin 反复触发的异常。
- 关于UINavigationController 下一页返回按钮问题。。
- 请问NSDate变量在内存中占用几个字节?是如何存储的?
- IOS 蓝牙键盘
- Windows上开发iphone app
但是,如果这种时候都不报错,那么究竟是什么时候会出现 message sent to released object 这种错误呢????
关于message sent to released object 能不能举个例子呢???
关于message sent to released object 能不能举个例子呢???参考下这个,启用Enable Zombie Objects :http://blog.csdn.net/lydyangliu/article/details/9035863如果按照平时使用C/C++的逻辑来看,这种时候,程序一定会抛异常的。
当然,良好的编程习惯,对于指针的处理,自然是进行非空的判断,用完释放及时置nullptr
关于message sent to released object 能不能举个例子呢???
因为你的程序非常短,所以c2 dealloc后废弃的那段内存是旧值,还没有人来使用它。
而当你的程序偏于复杂,且线程多的时候就可能出现c2 指向的内存刚刚dealloc 马上就重新被分配了,比如说这个时候c2指向的内存来了一个NSData,这个时候你去调用NSString的方法比如说stringByAppendingString 就会报错,因为NSData没有这个方法,而你以为c2指向的是NSString,错误类型是Unexcepted selector send to instance:0x1290a1这种。你用NSLog基本上不会出现错误的,因为所有的NSObject子类都可以用NSLog来输出description信息。即使没有 也会输出内存地址和类名。而且oc中没有你说的这个错误: message sent to released object
你是编的吧?
关于message sent to released object 能不能举个例子呢???
因为你的程序非常短,所以c2 dealloc后废弃的那段内存是旧值,还没有人来使用它。
而当你的程序偏于复杂,且线程多的时候就可能出现c2 指向的内存刚刚dealloc 马上就重新被分配了,比如说这个时候c2指向的内存来了一个NSData,这个时候你去调用NSString的方法比如说stringByAppendingString 就会报错,因为NSData没有这个方法,而你以为c2指向的是NSString,错误类型是Unexcepted selector send to instance:0x1290a1这种。你用NSLog基本上不会出现错误的,因为所有的NSObject子类都可以用NSLog来输出description信息。即使没有 也会输出内存地址和类名。而且oc中没有你说的这个错误: message sent to released object
你是编的吧? 那个错误写错了,汗。。是message sent to dealloced object ,(希望没有拼错),我问下,这个错误和Unexcepted selector send to instance 的区别在哪里??? 什么时候会报第一个错误???
关于message sent to released object 能不能举个例子呢???
因为你的程序非常短,所以c2 dealloc后废弃的那段内存是旧值,还没有人来使用它。
而当你的程序偏于复杂,且线程多的时候就可能出现c2 指向的内存刚刚dealloc 马上就重新被分配了,比如说这个时候c2指向的内存来了一个NSData,这个时候你去调用NSString的方法比如说stringByAppendingString 就会报错,因为NSData没有这个方法,而你以为c2指向的是NSString,错误类型是Unexcepted selector send to instance:0x1290a1这种。你用NSLog基本上不会出现错误的,因为所有的NSObject子类都可以用NSLog来输出description信息。即使没有 也会输出内存地址和类名。而且oc中没有你说的这个错误: message sent to released object
你是编的吧? 那个错误写错了,汗。。是message sent to dealloced object ,(希望没有拼错),我问下,这个错误和Unexcepted selector send to instance 的区别在哪里??? 什么时候会报第一个错误???一个是找不到对象,一个是找不到方法
至于什么时候销毁,要看内存当前使用情况和销毁规则。
貌似两年前的帖子里边讨论过。