Symbian C++初学者指南:命名规范与内存机制
需积分: 9 132 浏览量
更新于2024-10-14
收藏 332KB DOC 举报
"Symbian C++基础知识 易于初学者"
在Symbian OS的开发中,掌握C++的基础知识是至关重要的。Symbian C++有着特定的命名规范和编码习惯,它不采用常见的匈牙利命名法或驼峰式命名,而是遵循一套自己的规则以确保代码的一致性和可读性。
1. **命名规范和编码习惯**
- 类的命名通常以大写字母T开头,如TMyClass,用于表示轻量级的结构体和自定义类型。由于栈内存有限,应确保类的大小尽可能小。
- C类代表在堆上分配的对象,它们继承自CBase,需要显式地new和delete。C类对象不应作为其他类的成员,且只能通过指针或引用传递,不支持拷贝构造函数和赋值运算符,同时析构函数通常是虚函数。
- R类用于管理外部资源,如文件或网络连接,它们没有显式的构造函数、析构函数、拷贝构造函数和赋值运算符,使用Open()和Close()方法来操作。
- M类代表纯虚函数的抽象基类,常用于定义行为接口,不包含数据成员,没有构造函数、析构函数及运算符重载,主要用于事件回调。
- 静态类的成员函数全部为静态,通常用作工具类或辅助类,无实例化过程。
2. **基本类型**
- 整数类型包括TInt等,用于表示整数值。
- 文本类型如TDes,用于处理字符串,Symbian OS使用描述符(Descriptors)系统来高效地管理字符串内存。
- 布尔类型如ETrue和EFalse。
- 浮点类型如TReal,用于存储浮点数。
- TAny是一个通用指针类型,可以指向任何对象。
- 描述符(Descriptors)是一种特殊的内存管理技术,用于高效地处理字符串和缓冲区。
3. **Symbian OS的内存机制**
- 异常处理:通过Leave语句来抛出异常,离开当前函数并返回错误码。
- CleanupStack:用于在异常发生时自动清理栈上的资源,确保资源正确释放。
- 两阶段构造函数:在分配内存后先调用一个不执行任何初始化的构造函数,然后在安全的环境中完成对象的实际初始化。
4. **Symbian OS工程结构和MVC**
- 工程结构遵循一定的组织模式,比如头文件(.h)、实现文件(.cpp)和资源文件(.rss)等。
- MVC(Model-View-Controller)设计模式在Symbian OS中也被广泛应用,帮助开发者分离数据、界面和控制逻辑。
5. **生成SIS文件**
- SIS文件是Symbian应用程序的安装包,包含了应用程序的所有组件,通过编译和签名流程生成,供用户在Symbian设备上安装。
了解和掌握这些基础知识是成为Symbian C++程序员的必要步骤。通过深入学习和实践,开发者能够有效地编写高效、稳定的Symbian应用程序。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2009-01-15 上传
2008-03-17 上传
162 浏览量
点击了解资源详情
点击了解资源详情
点击了解资源详情
JavaEE_Info
- 粉丝: 1
- 资源: 1
最新资源
- ballista:现代网络的互操作性系统
- gsheet-planner:聪明的,可自动排序的Google表格计划器
- 翻译翻译什么叫HTML5(一)配套代码资源包
- Towering Yoga Masters Free Game-crx插件
- 我的
- Toolint-tests-Empty-TC-Add-Tools-2021-03-11T20-17-21.121Z:为工具链创建
- List:用CodeSandbox创建
- timecat-mmo::smiling_cat_with_heart-eyes: 时间猫,但是一个 MMO
- 视觉暂留测试工具-crx插件
- 变色龙:BAOBAB服务器的“第二层”模型交互层
- Perifa_Acessa:Com recursos de voz(acessibilidade)podendo ser a Alexa(Firefox)ou o Watson(Microsoft),Recursos de Hand Talk eImplementaçõesde melhorias a fazer,esteéum eta(protótipo)
- posterus:具有取消功能,可调度控制和协程的可组合异步原语(期货)
- OS-Places:演示和代码示例的OS Places存储库
- Commando Girl Free Games-crx插件
- PSTools GUI:PSTools 的图形前端-开源
- 彼得里斯