在C++中,<< 和 >> 是位运算符,也是用来实现流输入和输出的操作符。它们通常用于输入和输出流对象。
1. << 运算符:
- 在输出流情况下,它将右操作数(通常是变量或常量)的内容输出到左操作数(通常是一个输出流对象)中。例如,`cout << x;` 将变量 x 的值输出到标准输出流中。
- 在位运算情况下,它执行左移操作,将左操作数的位向左移动指定的位数,并将结果存储在左操作数中。例如,`x << 2;` 将变量 x 的二进制位向左移动 2 位。
2. >> 运算符:
- 在输入流情况下,它从右操作数(通常是一个输入流对象)中读取输入,并将结果存储到左操作数(通常是一个变量)中。例如,`cin >> x;` 将从标准输入流中读取一个值,并将其存储到变量 x 中。
- 在位运算情况下,它执行右移操作,将左操作数的位向右移动指定的位数,并将结果存储在左操作数中。例如,`x >> 2;` 将变量 x 的二进制位向右移动 2 位。
需要注意的是,<< 和 >> 运算符可以被重载,以实现用户自定义的输入和输出操作。这使得我们可以自定义输出类的对象或从流中读取自定义类的对象。