- 1、本文档共41页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2、嵌入式系统C++语言.ppt
嵌入式系统C++语言 陈俊彦 主要内容 一、嵌入式系统开发语言 二、C++语言的简单回顾 一、嵌入式系统开发语言 汇编语言 C语言 C++语言 JAVA语言 其它(如nes C等) 汇编语言 汇编语言的优点 程序运行结果直观 便于对程序的跟踪和调试 程序执行效率很高 程序运行速度很快 汇编语言的缺点 开发效率低下 使用场合 系统初始化、系统任务切换、时序严格的场合 C语言 C语言是在嵌入式领域中应用最广泛的编程语言,几乎所有的嵌入式开发环境都支持C语言。 C语言是一种高效的语言,用C写的程序执行速度快,占用内存少,经过优化后效率接近汇编程序。 C语言的主要不足是缺乏编程模型,描述复杂逻辑十分困难。同时,程序员可以随意修改程序中的内容,这在提高编程灵活性的同时也带来安全隐患。 C++语言 C++保留了C语言的强大功能与灵活性,并提供了继承、封装、多态等面向对象技术,为程序设计带来了深及灵魂的变革。 但是,C++语言过于庞大,对于资源受限的嵌入式系统来说,执行效率难于保证。 在1998年,Embedded C++规范正式制度(简称为EC++)。EC++是标准C++的一个子集,它从C++语法中剔除了一些实现复杂和会导致额外负担的语法元素。例如:友元、虚基类、异常处理、模板、命名空间等。同时,在标准库方面,EC++规范也做了删减,剔除了STL和Stream等。 C++在嵌入式系统中主要应用在图形界面开发。 JAVA语言 Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。 Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 二、C++语言的简单回顾 面向对象程序设计方法概述 类和对象 构造函数和析构函数 继承与派生 面向对象程序设计方法概述 面向过程的程序设计方法 详细地描述每一瞬时的数据结构及对其的操作过程。 面向对象的程序设计方法 将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。 类和对象 客观世界中任何一个事物都可以看成一个对象(Object) 任何一个对象都具有两个要素:属性和行为 对象的类型称为类,类代表了某一批对象的共性和特征 类是对象的抽象,对象是类的具体实例 声明类类型 类类型声明形式: class 类名 { private: 私有的数据和成员函数; public: 公用的数据和成员函数; protected: 受保护的数据和成员函数; } 声明类类型举例 例子: class Timer { public: void CalculateTime(); //成员函数 void ShowTime(); private: int hour; // 数据成员 int min; int sec; } 类成员访问属性 私有成员(private):只能被本类中的成员函数引用,类外不能调用(友元类例外)。 公用成员(public):既可以被本类中的成员函数所引用,也可以被类的作用域内的其他函数引用。 受保护成员(protected):不能被类外访问,但可以被派生类的成员函数访问。 如果不做属性声明,系统将其成员默认为私有成员(private)。 定义对象 先声明类类型,然后再定义对象 类名 对象名 例如:Timer time1; 在声明类类型的同时定义对象 不出现类名,直接定义对象 例如:class { private : …… public : …… }time1, time2; 对象的动态建立 前面介绍的方法定义的对象是静态的,在程序运行过程中,对象所占的空间不能随时释放,只有在函数结束时,该对象才释放。 用new运算符动态建立对象,可随时撤销对象,释放内存空间。 用new运算符动态地分配内存后,将返回一个指向新对象的指针的值,即所分配的内存空间的起始地址。用户可以获得该地址,并通过该地址来访问这个对象。如: Timer *time = new Timer; 在不再需要使用由new建立的对象时,可以用delete运算符予以释放。 类外定义成员函数 类的成员函数在类体中只写成员函数的声明,而
文档评论(0)