<<;来自C#中的C++
本文关键字:lt 中的 C++ 来自 | 更新日期: 2023-09-27 18:21:24
我刚开始用C++进行编码,在一些示例代码中看到了这个符号:<lt
C#中有一个等价吗?如果是,它是什么?提前谢谢。
免责声明:我对C#一无所知;这个答案只是描述C++中的运算符。
这取决于环境;该运算符经常被重载,以表示不同类型的不同含义。
对于整数类型,它是逐位左移运算符;它取一个值的位模式,并将其向左移动,将零插入低有效位:
unsigned x = 6; // decimal 6, binary 00110
unsigned y = x << 2; // decimal 24, binary 11000
一般来说,左移N位等于乘2N(所以这里,移位2位等于乘4)。
我可以肯定,运算符在C#中的使用与在C++中的相同。
标准库重载运算符,以便将值插入输出流,以便在控制台上、文件中或以其他方式生成格式化输出。
#include <iostream> // declare standard input/output streams
std::cout << 42 << std::endl; // print 42 to the console, end the line, and flush.
我认为C#有一个TextWriter
或类似的东西来处理格式化的输出,Console.Out
或类似于std::cout
的东西;但是C#使用普通的方法调用,而不是重载运算符。
operator<<
在C++中的含义与在C#中的含义完全相同;它是左移位运算符,并将数字1位中的所有位向左移动。
但是,在C++中,您可以重载大多数运算符,使它们对用户定义的类型执行任何您喜欢的操作。也许最常见的是,流的左移和右移运算符被重载,意思是"把这个东西塞进流中"(左移)或"从流中提取这种类型的变量"(右移)。