CC2530 发表于 2011-7-8 08:29:27

打算以后单片机全面上C++

打算以后单片机全面上C++。
51,AVR,STM8,STM32都用C++。

C++是功能,语法更灵活的C。

zy473551 发表于 2011-7-8 08:32:30

怎么用?

xinbihui 发表于 2011-7-8 08:35:49

会吗?

niba 发表于 2011-7-8 08:40:01

能说下好处吗?编程简单些?编程效率比C高些?还是程序维护方便?还是技术趋势呢? 一直用C,C++也懂点,请楼主说哈感受!

dengxiaofeng 发表于 2011-7-8 08:46:25

回复【楼主位】CC2530上官金虹
-----------------------------------------------------------------------
愿闻其详

823032003 发表于 2011-7-8 08:52:46

上官大侠 出本书吧、让我们学习下

jim_zeng 发表于 2011-7-8 08:56:42

等lz指教~

myemcu 发表于 2011-7-8 09:22:29

威......武......

eric_wang 发表于 2011-7-8 09:31:16

占位围观。

l310091170 发表于 2011-7-8 09:37:08

别是搞噱头啊!等你转型成功了,写本书吧,我们想瞻仰一下。

maggita 发表于 2011-7-8 09:40:26

C++代码会增大的

librae8226 发表于 2011-7-8 09:48:57

看过stm32用c++搞的,基本思路好像就是把每一种外设封装成类,不过最下面还得c来支撑吧?
等楼主研究结果吧,:P

lugang_2920213 发表于 2011-7-8 09:50:07

我觉得单片机上还是有C好,但是可以使用面向对象的思想编程。
对象的封装,继承等可以参考ffxz的RTT代码,C语言实现C++的面向对象程序设计。

reflecter 发表于 2011-7-8 18:08:11

回复【12楼】lugang_2920213老陆
我觉得单片机上还是有c好,但是可以使用面向对象的思想编程。
对象的封装,继承等可以参考ffxz的rtt代码,c语言实现c++的面向对象程序设计。
-----------------------------------------------------------------------
赞同

liwang0806 发表于 2011-7-8 18:13:39

来学习怎么用C++开发单片机,求示例程序!!

tootzoe 发表于 2011-7-8 18:28:01

MCU 能处理结构体(structure), C++ 中的类(class) 以看作是 structure, 只是这种 结构体能扩展功能和 接口, 我看过很多驱动是用C写的, 也有见过用C++写的

lantian0099 发表于 2011-7-8 19:14:16

关注中,怎么用? 用什么编译器啊

fisher3014 发表于 2011-7-8 19:17:53

C++是好东西

dr2001 发表于 2011-7-8 19:21:07

回复【14楼】liwang0806
-----------------------------------------------------------------------

Step 1,找到所用MCU的C++编译器。
Step 2,将所有.c文件修改扩展名为.cpp。
Step 3,将所有源文件重新加入工程。
Step 4,文件头尾用
#ifdef __cplusplus
extern "C" {
#endif
...
#ifdef __cplusplus
}
#endif
保护。

理论上,已经用上C++了。-_b
基础的东西C/CPP差异不大,CPP的额外开销也不大。

WithSword 发表于 2011-7-8 19:34:48

我也一直想转到C++,只是BOSS比较保守,不太愿意使用。一般来说,用C++并不会使空间使用量大增,但是它却有很多优秀的特性可供使用。这些优秀的特性,将使得在编写大型程序的时候得心应手。当然,如果用得不好,C++反而是一个累赘。

chunmuchixue 发表于 2011-7-8 20:55:22

空间消耗和内存好像消耗蛮大的,写了个测试工程,不知道是不是调用了系统的cout功能造成的

xkdwangcs 发表于 2011-7-8 22:04:12

#ifdef __cplusplus
extern "C" {
#endif
...
#ifdef __cplusplus
}
#endif
这个东西能解释一下吗
我看过但是不明白。

Cliff 发表于 2011-7-8 22:19:54

回复【楼主位】CC2530 上官金虹
打算以后单片机全面上c++。
51,avr,stm8,stm32都用c++。
c++是功能,语法更灵活的c。
-----------------------------------------------------------------------

51 是绝对不可能的。
C++ 需要标准 C 的支持,这点 51 非常不够,最明显的一点,(高效)参数传递不是通过STACK的。
另外,我很难想象,51 对虚函数的支持,就算实现,效率能到什么地步。

Cliff 发表于 2011-7-8 22:21:17

回复【楼主位】CC2530 上官金虹
c++是功能,语法更灵活的c。
-----------------------------------------------------------------------

不,这是编程思想的颠覆。
如果没意识到这点,仅仅以为C++是C的超集,那就离C++的门还比较远。

ruizhixing 发表于 2011-7-9 00:30:15

C++就是要面向对象的编程?

Cliff 发表于 2011-7-9 07:52:21

回复【24楼】ruizhixing
c++就是要面向对象的编程?
-----------------------------------------------------------------------

如果你这么说的话,那就和 【18楼】 dr2001 的做法差不多了
说C++,也只能是自我陶醉了

Style_CAN 发表于 2011-7-9 10:21:45

MCU 能处理结构体(structure), C++ 中的类(class) 以看作是 structure, 只是这种 结构体能扩展功能和 接口, 我看过很多驱动是用C写的, 也有见过用C++写的

122402902 发表于 2011-7-9 10:22:47

可以学习一下RT-Thread,它使用C结构体来做的。本来结构体就是特殊的类。 C++话我觉得可以,而且应该还很有优势。 但是要应用的话还要前辈指导。

FuckTheParty 发表于 2011-7-9 12:51:25

C++只要一涉及到virtual的东西,代码就会大增,效率就会大减。

WithSword 发表于 2011-7-9 13:07:55

确实如Cliff所说,C++并不仅仅是一个C的超集,而是一种思想的颠覆。当你明白那种思想时,你就会发现用C++的好处了。另外,C++有些特性的确会导致空间使用量大增,效率降低。至于这一些,建议参考谷歌C++编码规范,里面就有一些关于C++哪些特性是禁止使用的。

myqiang1990 发表于 2011-7-9 13:27:17

回复【21楼】xkdwangcs
-----------------------------------------------------------------------

指示编译器按照C语法编译。。。在C++编译器要编译C的时候经常用的。。

cookic 发表于 2011-7-9 14:14:38

感觉还是汇编比较简单

user1st 发表于 2011-7-9 16:51:57

如果大型程序的所有东西都要自己做,且没有参考。不管是用C还是CPP,都是蛋疼的事。

monkerman 发表于 2012-9-13 13:30:06

得用更多的存储器资源!

halloocc 发表于 2012-9-13 19:12:37

javascript 都可以模拟OO模型, C 有什么不可, OO是个设计的概念, 片上系统 要OO裁减了才好 {:lol:}
页: [1]
查看完整版本: 打算以后单片机全面上C++