分享

对于向嵌入式编程的c++化提出一些建议

 心不留意外尘 2016-05-09

http://blog./uid-223060-id-2127127.html

2007

嵌入式编程基本上都是c的天下,事实上,如果你尝试一下使用c++的话,会发现能省很多事情,程序也更加清晰。但为什么很多人都觉得c++不适合嵌入式编程呢?答案很简单,你用的特性太多了。

其实,即使在对即时性要求非常严格的嵌入式系统中,c++也能很好的工作,只是一般来说最好限制以下特性:
- 少进行动态内存分配(new,delete,malloc,free)
- 不进行run time type information(RTTI)
- 不允许使用虚函数
- 不允许模板编程

这样可以增加程序的健壮性和速度。那么c++能够给我们带来的好处是:
- 能够使用引用来代替指针,这样大大增强程序的健壮性
- 用类的方法来保证对模块内部变量的保护,减少非常容易出错的令人恼火的外部申明
- 能用构造来确保合适的初始化模块

其实c++最主要的缺陷就是对内存的占用稍微有些大,这主要是因为c++环境的初始化更加复杂。但是如果按照以上的原则的话,基本上是没有什么执行时期消耗的,写出来的程序目的很明晰,健壮,比如你做硬件接口的话,比用纯c效果要好得多。

欢迎讨论。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多