按相反顺序进行cout打印
cout printing in reverse order
在以下示例中尝试重载运算符():
#include <iostream>
using namespace std;
class Fib {
public:
Fib() : a0_(1), a1_(1) {}
int operator()();
private:
int a0_, a1_;
};
int Fib::operator()() {
int temp = a0_;
a0_ = a1_;
a1_ = temp + a0_;
return temp;
}
int main() {
Fib fib;
cout << fib() <<"," << fib() << "," << fib() << "," << fib() << "," << fib() << "," << fib() << endl;
}
它以与8,5,3,2,1,1相反的顺序打印fib序列。我知道各州都是以()重叠的方式显示的,但为什么印刷品以相反的顺序显示?
运算符<lt;是为其参数定义的某个函数。函数参数的求值顺序未指定。它们可以从右到左或从左到右进行评估。编译器似乎从右到左对它们求值。
相关文章:
- 如何在逗号后使用 cout 打印整数值,而无需在逗号后添加额外的零C++?
- 为什么 std::cout 打印浮点数、双精度和长双精度到相同的小数精度?
- cout 打印内存地址而不是值
- cout 打印不准确的结果,printf 打印准确的结果
- cout 打印的字符 [] 包含的字符数超过设置长度
- cout 打印的值不正确
- 无法使用Ostream打印,但可以使用COUT打印
- C 代码cout打印而不是等待在字符串中使用它
- 为什么 cout 打印"2 + 3 = 15"这段代码?
- 为什么std::cout打印非常小的科学符号值,而不是四舍五入到零
- C 基本的自定义COUT打印至consle
- cout.put() 是否推荐使用 cout<< 打印字符
- 尝试使用 cout 打印矢量中包含的对象列表并排序是错误的
- 使用 cout 打印一个(浮点)小数
- 用std :: cout打印零填充的十六进制
- 为什么我的cout打印两次
- 按相反顺序进行cout打印
- C++ cout 打印两次在循环中做
- lodpng正在向cout打印“1”,如何停止它
- 如何在C++中使用 cout 打印带有 2 位小数的浮动