29、Cocoa编程中的错误处理与绘图基础

Cocoa编程中的错误处理与绘图基础

1. 内存管理与错误处理基础

在非垃圾回收(GC)的代码环境中,对象释放后应立即将指针置为 nil ,以避免悬空指针问题。例如:

[obj release];
obj = nil;

这样做可以防止后续代码意外访问已释放的对象。非GC应用中,若忘记保留要使用一段时间的对象,也可能出现类似问题,这类错误较难排查,因此建议尽可能使用GC。

2. NSError类介绍

在Cocoa中,异常通常用于指出代码中的错误,而非用于流程控制。对于文件访问错误、网络错误等情况,Cocoa越来越多地使用 NSError 类来处理。

2.1 错误域和错误码

不同操作系统有不同的错误报告方式:
- UNIX系统 :系统调用后可检查 errno 的值来确定错误类型。
- 经典Mac OS :许多系统函数返回 OSStatus 类型的整数,调用后需检查该值。
- Mac OS X :是混合操作系统,结合了UNIX和Carbon技术。为统一处理不同来源的错误,Apple引入了 NSError 类,它将系统级错误码封装在Objective - C对象中。每个 NSError 实例包含:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值