C++关于多个连续流插入符<<中执行的顺序问题
2007-10-19 21:09
507 查看
曾经和几位朋友争论过关于cout<<xxx<<xxx<<xxx;中<<执行顺序的问题,也有些朋友问过我这个问题,现在我写下一个小小的程序以证明关于<<插入运算符所具有的右结合性质(从右往左的执行顺序)
#include <iostream>
//using namespace std;
using std::cout;
using std::endl;
int & streamExecuteSequenceTest(int& i)
{
return ++i;
}
int main(void)
{
int i=0;
cout<<"1 : "<<streamExecuteSequenceTest(i)<<endl //Execute 3
<<"2 : "<<streamExecuteSequenceTest(i)<<endl //Execute 2
<<"3 : "<<streamExecuteSequenceTest(i)<<endl; //Execute 1
//此程序证明了<<流运算符具有右结合的特性,从右往左执行
return (0);
}
#include <iostream>
//using namespace std;
using std::cout;
using std::endl;
int & streamExecuteSequenceTest(int& i)
{
return ++i;
}
int main(void)
{
int i=0;
cout<<"1 : "<<streamExecuteSequenceTest(i)<<endl //Execute 3
<<"2 : "<<streamExecuteSequenceTest(i)<<endl //Execute 2
<<"3 : "<<streamExecuteSequenceTest(i)<<endl; //Execute 1
//此程序证明了<<流运算符具有右结合的特性,从右往左执行
return (0);
}
相关文章推荐
- 关于List<T>和ArrayList<T>执行效率问题
- html标记<a/>属性href, onclick执行顺序与失效问题解决
- 关于C++输出流cout的执行顺序问题
- C++关于std namespace与# include<iostream>关系的有关问题
- C++中operator<<调用顺序问题
- <<与++的问题运算与输出顺序
- 关于Java中try catch finally throw return的执行顺序问题
- 关于<<和>>重载操作符 返回值的问题
- 关于&lt;context:property-placeholder&gt;多处使用的问题
- 关于<c:forEach>取得集合数量的问题
- 关于八数码问题中的状态判重的三种解决方法(编码、hash、<set>)
- 关于<rich:popupPanel>中的<h:inputText>不能正确修改后台的值 的问题
- 关于struts2的xml中<result type="redirect">参数问题
- 关于jsp页面头部<%@ %>报错的问题
- 1、C++关于拷贝构造函数和赋值运算符重载问题的测试程序。因为调用顺序不清,导致内存泄漏new delete
- 关于jsp中<input type="file">获取路径问文件名,获取完全路径问题
- 关于JS执行顺序的问题
- 关于嵌入式C&&C++的一些编程问题(二)
- 关于嵌入式C&&C++的一些编程问题(三)
- 关于嵌入式C&&C++的一些编程问题(四)