C++在嵌入式应用中的机遇与挑战

原创 2012年03月21日 10:51:20

C++作为一门高级语言,人们在提及它时,总难免会谈到C语言。直至今天,很多人对于C++语言的认识依然是“C语言的超集”。这是因为C++的起源与C语言有着

千丝万缕的联系。下面由卓跃教育为您介绍。
  
       1978年,美国贝尔实验室的DennisRitchie和BrianKernighan在BCPL以及其简化版本B语言的基础之上开发了C语言,并合作出版了《TheCProgrammingLan-guage》。C语言迅速得到了大家的认可,并广为流传。1989年,ANSI推出了第一个C语言的标准——X3.159-1989,并被ISO采纳,随之发布。ISO/IEC9899-1990。早在C语言标准发布之前,贝尔实验室的BjarneStroustrup就致力于在C语言里增加类、函数类型检查以及其他的一些优秀特征,于1980年发布“CwithClasses

”。经过持续的努力,他最终完成了对C语言的改造,由此创生出一门新语言——C++,并出版了《TheC++ProgrammingLanguage》一书。
  
       这一方面是由于嵌入式软件开发工程师人员多年来应付有限资源的经验而养成的保守态度,另一方面也是由于长久以来,嵌入式系统应用设计中,人们要花费许多精力在底层硬件的驱动上,功能实现也主要局限在实时操作系统和相关支撑软件的层次,并不涉及过多的应用软件开发。这种在严苛条件下追求效率与实时性的任务,其他的高级语言并没有特别的优势。
  
       最近几年,嵌入式系统领域又有了新的发展。首先,随着手机、PDA等消费性电子产品的飞速增长,嵌入式系统的市场规模在迅速扩大,同时越来越多的智能嵌入式应用场合需要互联网的支持,这要求嵌入式系统的软件具有更好的应用性和更高的复杂性;其次,随着芯片等相关领域的技术进步,嵌入式开发工程师们不再需要时时刻刻去考虑资源是否够用了。当面向对象的高级语言参与到嵌入式系统设计中去不再遥不可及时,语言的效率则成为突出的问题。
  
       值得注意的是,尽管自1998年发布最初的C++标准——ISO/IEC14882:1998以来,每5年都会对此标准进行一次更新,但是由于C++语言过于复杂,以及它经历了长年的演变,直到2004年,没有任何一款编译器完全支持ISOC++。这对于时常要面对各种严苛条件的嵌入式系统应用工程师们来说,是难以忍受的。同时,即使是符合ISOC++标准的语句或者格式,对于实际的应用场合来说,也存在着重大隐患,而不应当被直接采用。因此,人们迫切需要一个正式的基于安全角度考虑的C++语言使用规范

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C++在嵌入式应用中的安全问题

在嵌入式系统的软件设计中,“汇编语言+C语言”早已成为理所当然的经典组合。的确,对于硬件配置来说,汇编语言清晰明了;对于上层设计来说,C语言紧凑高效。这样的搭配能够满足大多数传统嵌入式系统应用的需要。...
  • chwrl
  • chwrl
  • 2012-02-26 22:00
  • 149

SQLite3数据库在嵌入式应用之三: 以日志功能为例给出常用命令和C/C++常用API

1、引用:http://www.runoob.com/sqlite/sqlite-c-cpp.html 以下是重要的 C&C++ / SQLite 接口程序,可以满足您在 C/C++ 程序中使用 ...

C++在嵌入式应用中的安全问题

发信人:yiwuxun 标  题: C++在嵌入式应用中的安全问题 发信站:csdn, 站内      在嵌入式系统的软件设计中,“汇编语言+C语言”早已成为理所当然的经典组合。的确,对于硬件配置来...

嵌入式应用一例--借助卫星广播信号实现程序升级

一.前言:     忘了是哪几部科幻电影,里面有个情节,就是大反派操控了卫星,发射邪恶的信号,然后地面的所有机器人的智能程式都变了,成了杀人机器。现在,我就准备当那个“大反派”:只是我没有机器人,只...

c++嵌入式应用介绍

  • 2009-07-29 13:45
  • 1.60MB
  • 下载

SQLite3数据库在嵌入式应用之四:如何导出数据库?给出代码示例

翻找SQLite的教程,也没有找到怎么用SQL语句将本地数据库导出来。网上搜了搜,最后发现只能用SQLite 二进制应用程序将数据库导出来。似乎都没有给出如何在代码里集成这个功能。下面详细说下,怎么将...

嵌入式应用编程经验之谈-引脚复用

本文谈到我们在使用STM32F1系列芯片的引脚中容易忽略的问题点。

IAR开发嵌入式应用程序(基于系统的)

一:我要实现的功能: 1)公司的机子已经带了ucosii系统啦!需要用IAR开发应用程序,下载到机器里面直接运行。(公司要我 们要把ADS工程转IAR囖!!)  因为是刚刚接触IAR,我就把我的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)