目前来说,大部分单片机的性能还是比较低,资源还是比较少的,对于开发语言的要求肯定是尽可能的高效,编译出的程序尽可能的小,其实从这两方面来说,汇编语言最合适的,但是因为汇编语言相对来说可移植性差,而且太过底层不容易掌握,所以任务就落到了C语言身上,C语言的性能接近汇编,可移植性好,编译后的大小能够接受。如果使用C++语言来开发,确实会有一些好处,比如面向对象的思想等,但是其编译出的代码运行效率以及占用空间的大小是无法与C语言编写的代码想比的,毕竟C++为了支持面向对象,继承,派生等个中特性,需要比C语言更多的库来支持,占用空间也就会更大。
随着单片机性能的逐渐提升,存储器成本的逐渐下降,C++未必不会成为未来嵌入式编程的主流语言之一,毕竟现在Python都能够在嵌入式编程中占有一席之地了,C++也是有机会的。
C++代码编译出来的HEX容量较大
但面向对象的编程要比过程化编程舒服得多
至于除了容量外还有什么不良影响真不清楚,我也很想尝试在单片机上使用C++编程
其实 c 是给小的系统,比如单片机等,使用的,比汇编方便,和汇编执行效率差不太多。
c++ 是给电脑,win linux 那种系统使用的,没怎么考虑内存,硬件资源的因素,c++ 代码编译出来比 c 大很多
当然现在单片机也支持 c++ ,但是 c 还是主流
优点就是代码灵活性较高,因为C++写应用代码会好写一点
缺点就是需要用的库又多了一点,程序的大小会增加
C++是面对象编程,封装库比较多,编译后文件体积比较大,效率不如C