cout多个变量的时候,等效于调了一次还是多次printf?
例如cout<<123<<5.6<<"abc"<<endl;这句话,对于iostream的实现者而言,是相当于构造了一个格式化字符串把123,5.6,"abc"一起输出呢? 还是相当于调用了printf之类的函数3次,每次输出一个变量?
前一种的效率应该比较高吧。我没有研究过GCC或者VC的iostream源代码。知道的大虾给点意见哈。
多谢。
[解决办法]
并不是构造一个格式化的字符串,cout是一个对象,<<是这个对象的操作符,cout<<123后又返回一个iostream对象,所以可以继续使用<<,其他类似。
[解决办法]
楼上正解。cout也是一个对象而已!
[解决办法]
http://www.researchgate.net/post/Whats_the_difference_between_the_printf_and_cout_statements
[解决办法]
一次或多次,真有效率问题么?