当前位置:  开发笔记 > 编程语言 > 正文

嵌入式系统中的C++用法

如何解决《嵌入式系统中的C++用法》经验,为你挑选了4个好方法。

嵌入式系统应该避免C++的哪些特性?

请按以下原因对答案进行分类:

内存使用情况

代码大小

速度

可移植性

编辑:让我们使用带有64k ram的ARM7TDMI作为目标来控制答案的范围.



1> Nils Pipenbr..:

RTTI和异常处理:

增加代码大小

降低性能

通常可以用更便宜的机制或更好的软件设计来代替.

模板:

如果代码大小是一个问题,请小心它们.如果您的目标CPU没有或只有非常小的指令缓存,它也可能会降低性能.(如果不小心使用,模板往往会膨胀代码).Otoh聪明的元编程也可以减少代码大小.他的答案没有明确的答案.

虚函数和继承:

这些对我来说很好.我在C中编写了几乎所有嵌入式代码.这并没有阻止我使用函数指针表来模仿虚函数.他们从未成为一个性能问题.



2> Avdi..:

选择以避免某些特征应始终行为的定量分析来驱动你的软件,在你的硬件,与选择的工具链,制约下您的域名需要.在C++开发中有很多传统的智慧"不应该",它们基于迷信和古代历史,而不是硬数据.不幸的是,这通常会导致编写大量额外的解决方法代码,以避免使用某些人曾经有过某些问题的功能.



3> Greg Rogers..:

例外情况可能是应避免的最常见答案.大多数实现具有相当大的静态内存成本或运行时内存成本.他们也倾向于使实时保证更难.

看看这里为嵌入式C++写的编码标准的一个很好的例子.



4> jk...:

文档" 信息技术 - 编程语言,它们的环境和系统软件接口 - 关于C++性能的技术报告 "也为嵌入式设备的C++编程提供了一些很好的信息.

推荐阅读
手机用户2502851955
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有