【发布时间】:2015-03-18 20:49:40
【问题描述】:
我正在为大学做一个项目,我正在使用 C++。我将std::cin 和std::cout 与<< 和>> 运算符一起使用来读取输入并显示输出。我的教授发布了一个公告,说>> 和<< 不推荐,因为它们很慢。
我们只需要读取整数并且输入总是正确的(我们不需要验证它,我们知道它的格式并且只需要读取它)。如果不推荐<< 和>>,那么我们应该使用哪些替代方案?
【问题讨论】:
-
如果教授的信息在这里是准确和完整的,有过早优化的味道。
-
也许他想让你使用像
printf、scanf和朋友这样的C风格的IO函数。 -
@0x499602D2:也许,但我不知道有什么理由认为它们比
std::cout << ...和std::cin >> ...快。注意printf必须解析格式字符串。 -
教授是否对操作员进行了分析以支持他的说法,即他们很慢?和慢相比究竟是什么? 他的选择是什么?
-
关于效率问题之前有一些讨论:stackoverflow.com/questions/605839/c-and-c-file-i-o 作为个人说明,如果您正在学习入门编程课程,您没有理由担心这种效率。