symbianC++基础中文
### Symbian C++基础中文知识点####一、Symbian C++简介Symbian C++是一种专门用于Symbian操作系统应用程序开发的编程语言。Symbian OS作为曾经市场占有率最高的智能手机操作系统之一,尤其受到诺基亚等手机制造商的青睐。Symbian C++的设计目标是为了提供高效且稳定的移动应用开发解决方案。 ####二、Symbian C++开发环境搭建Symbian C++的开发环境搭建主要分为几个部分:选择合适的集成开发环境(IDE)、安装必要的工具包和支持库等。以下是对几种常见开发环境搭建方法的详细介绍: ##### 1. Nokia的Carbide IDE **Carbide**是诺基亚推出的一款免费的集成开发环境,适用于Symbian C++和Java开发。 - **针对JAVA的Carbide开发工具**:主要用于Java应用的开发,虽然本篇主要关注的是C++,但对于开发者来说了解这一点也很有用。 - **针对Symbian OSC++的Carbide开发工具**:专门为Symbian C++开发而设计,支持代码编辑、编译、调试等功能。 - **实现用户界面个性化和定制化的Carbide工具**:提供了一系列工具帮助开发者快速创建美观的用户界面。 ##### 2.基于Microsoft Visual Studio IDE的开发环境搭建**Visual Studio**是一个非常强大的开发平台,通过安装特定的插件或扩展可以支持Symbian C++开发。 - **安装Carbide.vs 3.0的必要条件**:确保计算机上已安装.NET Framework和JRE等必需组件。 - **安装Visual Studio 2005**:Visual Studio 2005是当时主流的版本,也是支持Symbian C++开发的良好平台。 - **安装JRE和ActivePerl**:这些工具对于开发环境的搭建至关重要。 - **选择安装SDK**:根据开发需求选择合适的Symbian SDK版本。 - **安装Carbide.vs**:安装完成后可以通过该工具直接创建和管理Symbian C++项目。 ##### 3.基于Eclipse IDE的开发环境搭建**Eclipse**是另一款流行的跨平台开发环境,也支持Symbian C++开发。 -首先安装Eclipse,然后添加支持Symbian C++的插件或扩展。 -这种方式适合那些偏好Eclipse的开发者。 ####三、Symbian C++独特机制Symbian C++提供了许多独特的机制,使得其能够有效地处理移动设备上的资源限制问题。 ##### 1.命名惯例为了保持代码的一致性和可读性,Symbian C++推荐遵循一定的命名规则: - **命名总则**:命名应该直观且有意义,遵循一定的约定以便其他开发者容易理解。 - **命名前缀与命名后缀**:如使用`CA`表示应用程序类(`C`代表Class),`TRAP`表示异常处理等。 ##### 2.基本类型Symbian C++定义了一些基本数据类型,如`TInt`, `TUint`, `TReal`等,这些类型与标准C++类型有所区别,更加符合Symbian OS的需求。 ##### 3.类的划分Symbian C++对类进行了详细的划分,每种类型的类都有其特定的用途: - **C-Class(堆分配类)**:在堆上动态分配内存的类。 - **R-Class(资源类)**:用于管理有限资源的类。 - **T-Class(值类)**:表示简单值的类。 - **M-Class(接口类)**:用于定义接口。 - **静态类**:用于封装静态方法和变量。 - **D-Class**:虽然文中没有详细解释D-Class的含义,通常是指用于数据存储的类。 ##### 4.异常处理Symbian C++的异常处理机制与其他语言有所不同: - **TRAP和TRAPD**:是Symbian C++中特有的异常处理宏,用于捕获和处理异常。 - **异常抛出函数**:当函数执行失败时会抛出异常。 - **可能异常退出的操作符:new(ELeave)**:在分配内存失败时使用,允许函数安全返回。 - **可能异常退出的函数**:某些函数可能因为内部错误而异常终止。 - **引入清除栈(CleanupStack)机制**:这是一种用于自动清理分配资源的机制,提高了代码的健壮性。 ##### 5.清除栈是一种用于管理临时资源的有效机制: - **清除栈成员要求**:任何进入清除栈的对象都必须提供相应的清除方法。 - **清除栈的操作**:当离开作用域时,清除栈会自动调用这些对象的清除方法。 - **清除栈弹出操作的debug版本**:提供了调试版本的清除栈操作,方便开发者调试。 - **使用清除栈的注意事项**:需要确保正确使用清除栈,避免内存泄漏等问题。 ##### 6.两阶段构造Symbian C++支持两阶段构造机制: - **引入原因**:为了避免资源浪费,两阶段构造允许在构造过程中发现资源不足的情况时,不分配不必要的资源。 - **具体措施**:第一阶段初始化,第二阶段实际构造。 - **总结**:这种机制提高了效率,减少了内存消耗。 ####四、S60第三版程序框架Symbian C++在S60第三版中有特定的应用程序框架: - **框架概述**:介绍了Symbian应用的基本结构。 - **框架详解**: - **E32Main()函数**:每个Symbian应用程序的入口点。 - **应用类**:管理整个应用程序的生命周期。 - **文档类**:处理数据和业务逻辑。 - **UI类**:负责用户界面。 - **视图类**:直接与用户交互的部分。 - **引擎类**:后台处理任务。 #####一些特殊的文件- **inf文件**:包含应用程序元数据的文件。 - **mmp文件**:Makefile的一种特殊形式,用于配置编译选项。 - **pkg文件**:包含打包信息。 - **rss文件**:资源文件,用于存储图标、字符串等资源。 - **rls文件**:资源清单文件,用于组织资源。 - **hrh文件**:头文件资源,用于定义资源ID。 - **pan文件**:面板文件,定义用户界面布局。 ####五、Symbian C++程序安装Symbian C++程序的安装流程包括: - **在Carbide.C++v1.2下制作安装包**:使用Carbide.C++创建安装包。 - **安装过程中出现的错误提示**:可能会遇到的一些常见错误及其解决方法。 ####六、Symbian C++有效的学习方法- **读程序**:通过阅读源码加深对Symbian C++的理解。 - **看文档**:官方文档和其他资源是学习的重要工具。 - **逛论坛**:参与社区讨论,获取最新信息和技术支持。 - **我经常访问的网站**:推荐了一些有用的网站和资源。以上是关于Symbian C++的基础知识、开发环境搭建、独特机制以及程序框架等方面的详细介绍。对于希望深入学习Symbian C++的开发者来说,这些都是不可或缺的基础知识。
400.03KB
文件大小:
评论区