SymbianOS C++编码规范与最佳实践
下载需积分: 5 | PDF格式 | 380KB |
更新于2024-09-19
| 42 浏览量 | 举报
"C++程序员编码诀窍.pdf"
这篇文档是针对C++程序员的一份编码技巧指南,特别是针对Symbian OS平台的开发。文档由诺基亚公司在2003年发布,旨在提供最佳实践和建议,以提高代码质量和可靠性。
在内存管理方面,文档强调了几个关键点:
1. **清除堆栈(CleanupStack)**:这是Symbian OS中一个重要的概念,用于确保在异常情况下正确释放资源。文档指出,所有的程序都应该检查并处理"资源用尽"的错误。传统的错误处理方法可能不足以应对所有情况,而Symbian OS提供了一种解决方案,即使用CleanupStack来跟踪和清理在函数调用期间分配的资源。
2. **规则1:异常退出函数和捕获模块**:异常退出函数是当发生错误时用来清理资源的特殊函数。`new(ELeave)`运算符是与异常处理相关的,用于创建对象并在异常时抛出错误。`NewL()`和`NewLC()`是常见的构造函数约定,它们用于执行两阶段构造,并在异常时清理内存。`TRAP`和`TRAPD`是用于捕获和处理异常的宏。
3. **规则2:使用清除堆栈**:清理堆栈是一种确保资源在异常退出时被释放的方法。它需要在函数中使用,以便在函数结束时,无论正常还是异常退出,都能正确清理堆栈上的对象。
4. **规则3:两阶段构造**:这是一种最佳实践,尤其是在动态分配对象时。两阶段构造意味着首先分配内存,然后初始化对象,这样在初始化失败时可以安全地释放已分配的内存。
5. **公共错误**:文档列举了一些常见的错误,比如误用`TRAP`和`TRAPD`宏,错误使用`new`运算符,以及在不需要的情况下使用后缀`L`。
6. **内存泄漏**:文档还提到了检测和防止内存泄漏的重要性。在Symbian的WINS模拟器中,有工具可以帮助检测和定位内存泄漏问题。
这份文档为Symbian C++开发者提供了关于异常处理、内存管理和资源管理的重要指导,有助于编写更健壮、更稳定的代码。遵循这些最佳实践,开发者可以减少程序中的错误,提高软件的质量和可靠性。
相关推荐
4 浏览量
MeAndJack
- 粉丝: 210
- 资源: 28