我的硬件C++和C89上有两个编译器
我正在考虑将C++与类一起使用但没有多态(以避免使用vtable).我想使用C++的主要原因是:
在开发非常有限的硬件(4kb RAM)时,您是否认为有理由坚持使用C89?
谢谢你的回答,他们真的很有帮助!
我认为这个主题通过,我会坚持使用C主要是因为:
因为你提供了很多好的答案,所以很难接受一个答案.不幸的是我不能创建一个wiki并接受它,所以我会选择一个让我最想的答案.
我正在参加C++编程课程,教授告诉我们没有必要学习C语言,因为C++包含C语言中的所有内容以及面向对象的特性.然而,其他一些人告诉我,这不一定是真的.任何人都可以对此有所了解吗?
我在一个C问题上发表的答案得到了评论,评论者建议将代码编写为使用C++编译器进行编译,因为最初的问题提到代码应该是"可移植的".
这是"便携式C"的常见解释吗?正如我在对该答案的进一步评论中所说的那样,对我来说完全令人惊讶,我认为可移植性意味着完全不同的东西,并且在编写也是合法C++的C代码时看到的好处很少.
在我的Windows/Visual C环境中,有许多替代方法可以执行相同的基本字符串操作任务.
例如,为了进行字符串复制,我可以使用:
strcpy,ANSI C标准库函数(CRT)lstrcpy,kernel32.dll中包含的版本StrCpy,来自Shell Lightweight Utility库StringCchCopy/ StringCbCopy,来自"安全字符串"库strcpy_s,安全增强版CRT虽然我理解所有这些替代方案都有历史原因,但我可以为新代码选择一组一致的函数吗?哪一个?或者我应该根据具体情况选择最合适的功能?
可能重复:
为什么人为地将代码限制为C?
我开始学习C,但后来直接进入C++只是因为它支持OO并且也是后续工作所必需的.然而,一些公司坚持雇用具有特别强大的C经验的人 - 我注意到这尤其适用于硬件驱动程序开发公司.
我想用C编写一个2d游戏引擎(没有c ++).有哪些好的库有我可能需要的通用数据类型 - 例如队列,树,地图,列表等等?
作为一个想要提高他的基本编程技能的人,我选择学习C++而不是C.这引出了我的问题:我在C中留下的任何基本技能是否可能无法通过学习C++获得?
相关问题: 在学习C++之前我应该学习C吗?
我的问题是,为什么人们在使用C++时仍然使用C?我研究过C,因为它被认为是程序员交流的语言,建议任何程序员知道.然后我转到C++,我现在想,为什么人们仍然在C中使用和编程?据我所知,C++更强大(在其中有OOP方面),它和C一样快,整体似乎更好.我见过人们不喜欢C++,因为编写代码太难了.
有很多优秀的答案如何用C模拟面向对象的概念.仅举几例:
什么时候使用这种模拟是合适的,而不是本地使用支持面向对象技术的语言?
高度相关: