问题
我有两个编译器在我的硬件C++和C89上
我在考虑将C++与类一起使用,但不使用多态性(以避免vtable). 我想使用C++的主要原因是:
- 我更喜欢使用"内联"函数而不是宏定义.
- 我想使用名称空间,因为我的前缀使代码变得杂乱无章.
- 我认为C++的类型更安全一些,主要是因为模板和冗长的强制转换.
- 我非常喜欢重载函数和构造函数(用于自动强制转换).
在为非常有限的硬件(4KB的RAM)进行开发时,您认为有什么理由坚持使用C89吗?
结论
谢谢你的回答,他们真的很有帮助!
我把这个问题想透了,我将继续用C语言,主要是因为:
- 用C语言预测实际代码更容易,如果只有4kb的ram,这一点非常重要.
- 我的团队主要由C开发人员开发,所以高级C++特性不会经常使用.
- 我在我的C编译器(C89)中找到了一种内联函数的方法.
很难接受一个答案,因为你提供了这么多好的答案.