c ++ cout vs printf()

时间:2015-08-09 20:08:49

标签: c++ printf cout

通过几个不同来源了解c ++后,我发现有关使用cout / printf()的建议存在冲突。一位消息人士说printf(),我引用:

  

...不提供类型安全性,因此很容易无意中告诉它显示一个整数,就好像它是一个字符,反之亦然。 printf()也不支持类,所以不可能教它如何打印你的类数据;你必须逐个将每个类成员提供给printf()。

因此,对我来说更重要的是使用printf()的可读性因素。另一方面,另一个消息来源提到cout使用了重载的运算符<<,使用了更多的指令来执行,因此在大型程序的内存方面可能更昂贵。虽然,说这是系统程序员的人,其中每一点表现都至关重要。但是说我想进入游戏或应用程序开发。

  • printf()cout之间的效果差异是否很重要?

  • 一般来说,我选择在应用程序中使用它真的很重要吗?

感谢您的任何意见。

2 个答案:

答案 0 :(得分:1)

您可以针对特定用例衡量特定实现的差异,并自行确定。

我会说问题中的两种推理都有其优点,但你无法概括性能。

答案 1 :(得分:0)

如果你想进入游戏或应用程序编程,不需要太多printf / cout。这些情况下唯一的用途是进行调试。

如果你真的需要经常使用printf / cout,那么差异就在于写入大量数据时,否则你不需要打扰。