symbian+C++基础中文
symbian+C++基础中文### Symbian C++基础中文知识点####一、Symbian C++概述Symbian C++是一种专为Symbian操作系统设计的编程语言,该系统曾广泛应用于诺基亚等品牌的智能手机上。本文档主要介绍了Symbian C++的基础知识,并特别关注于S60第三版系统的开发。Symbian OS作为一款专门为移动设备设计的操作系统,在智能手机领域曾经占据了重要的市场份额。 ####二、Symbian C++开发环境搭建##### 1. Nokia的Carbide工具Carbide是诺基亚提供的官方集成开发环境(IDE),它支持多种类型的项目开发,包括Java和C++。 - **针对JAVA的Carbide开发工具**:用于开发基于Java的Symbian应用程序。 - **针对Symbian OS C++的Carbide开发工具**:用于开发Symbian C++应用程序。 - **实现用户界面个性化和定制化的Carbide工具**:提供图形界面设计功能,方便开发者定制应用的外观和感觉。 ##### 2.基于Microsoft Visual Studio IDE的开发环境搭建Visual Studio是一个非常强大的集成开发环境,可以通过安装特定插件支持Symbian C++的开发。 - **安装Carbide.vs 3.0的必要条件**:确保计算机上已经安装了.NET Framework、Windows SDK等软件。 - **安装Visual Studio 2005**:这是支持Symbian C++开发的版本之一。 - **安装JRE和ActivePerl**:某些Symbian开发工具依赖这些软件。 - **选择安装SDK**:根据项目需求选择合适的Symbian SDK版本。 - **安装Carbide.vs**:此工具为Visual Studio提供了对Symbian C++的支持。 - **安装完成后**:配置必要的环境变量和设置,确保开发环境能够正常工作。 ##### 3.基于Eclipse IDE的开发环境搭建Eclipse同样支持Symbian C++的开发,通过安装相应的插件即可。 - **安装Eclipse**:选择适合C++开发的版本。 - **安装Symbian插件**:如Carbide UI或其他第三方插件,这些插件提供了对Symbian C++的支持。 ####三、Symbian C++独特机制Symbian C++具有一些独特的机制和特性,这些特性有助于提高代码的健壮性和效率。 ##### 1.命名惯例- **命名总则**:遵循一定的命名规则可以帮助开发者更好地理解和维护代码。 - **命名前缀与命名后缀**:例如,`C`类型通常表示`class`,`R`表示资源(`resource`)类型。 ##### 2.基本类型Symbian C++定义了一系列基本类型,如`TInt`、`TReal`等,它们通常比标准C++类型更安全且易于使用。 ##### 3.类的划分Symbian C++中的类分为几种不同的类型: - **C-Class:堆分配类**:用于管理动态分配的资源。 - **R-Class:资源类**:代表系统资源,如文件或数据库连接。 - **T-Class:值类**:用于存储简单的数据结构。 - **M-Class:接口类**:定义了类之间的交互接口。 - **静态类**:不实例化即可调用其成员。 - **D-Class**:此类别在文档中未明确定义,可能是文档的笔误或者是某种特定用途的类。 ##### 4.异常处理Symbian C++的异常处理机制非常独特,主要包括: - **TRAP和TRAPD**:这些宏用于捕获异常并继续执行。 - **异常抛出函数**:如`User::Leave()`用于抛出异常。 - **可能异常退出的操作符**:如`new(ELeave)`。 - **可能异常退出的函数**:这类函数可能会导致异常退出。 - **引入清除栈(CleanupStack)机制**:用于自动释放资源,提高代码的健壮性。 ##### 5.清除栈是Symbian C++中一种重要的资源管理机制: - **清除栈成员要求**:必须遵循特定的规则才能成为清除栈的成员。 - **清除栈的操作**:包括入栈和出栈操作,以及如何在异常发生时自动清理资源。 - **清除栈弹出操作的debug版本**:提供调试信息以帮助开发者定位问题。 - **使用清除栈的注意事项**:例如避免在析构函数中直接调用清除栈成员的析构函数。 ##### 6.两阶段构造是Symbian C++中用于初始化复杂对象的一种机制: - **引入原因**:为了确保对象被正确地初始化。 - **具体措施**:首先进行基本构造,然后调用`ConstructL()`或`ConstructFromL()`进行详细构造。 - **总结**:两阶段构造有助于提高代码的健壮性和可维护性。 ####四、S60第三版程序框架S60第三版的程序框架是Symbian C++应用程序的基础结构。 - **框架概述**:S60第三版应用程序通常遵循一个固定的架构模式。 - **框架详解**: - **E32Main()函数**:程序的入口点,负责创建应用类对象。 - **应用类**:管理文档和用户界面,创建文档类对象。 - **文档类**:管理用户界面和数据,创建UI类对象。 - **UI类**:负责用户界面逻辑,是程序运行的中枢。 - **视图类**:负责绘制用户界面,是程序的前台。 - **引擎类**:负责业务逻辑,是程序的后台。 ####五、Symbian C++程序安装过程包括: - **在Carbide.C++v1.2下制作安装包**:使用Carbide工具生成安装包。 - **安装过程中出现的错误提示**:常见的错误及其解决方法。 ####六、Symbian C++有效的学习方法- **读程序**:阅读现有的源代码以理解Symbian C++的实践用法。 - **看文档**:官方文档是学习Symbian C++的重要资料。 - **逛论坛**:参与社区讨论可以获得实际开发中的经验和技巧。 - **我经常访问的网站**:列举了一些有用的网站,如Nokia Developer、Symbian Developer等。以上内容涵盖了Symbian C++的基础知识、开发环境搭建、特殊机制及编程框架等方面的知识点,希望能帮助开发者更好地理解和掌握Symbian C++编程。
400.03KB
文件大小:
评论区