qt 编程符号是>>什么意思
来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/07/24 07:34:16
qt 编程符号是>>什么意思
![qt 编程符号是>>什么意思](/uploads/image/z/5210873-17-3.jpg?t=qt+%E7%BC%96%E7%A8%8B%E7%AC%A6%E5%8F%B7%E6%98%AF%3E%3E%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D)
在qt中,有一些基于数据流操作的类重载了 >> 这个运算符,一般的意思是指将流(stream)中的数据写入到其他类型的数据中,比较常用的是QTextStream 和QDataStream;下面给出一个例子:
QTextStream 重载了操作符 >> 并定义了下面这个函数:
QTextStream & operator>> ( QString & str )
由此可见可以将QTextStream 的内容写入一个QString中,如下:
QString line;
QTextStream in("test.txt",QIODevice::ReadOnly);//以只读模式打开一个文本文件
in >> line;//读取一行文本内容到string中
除此之外呢,>> 也可以代表右移操作,这个就是它最本来的意思了.
比如说
int num = 2;
num = (num >> 1) //代表将num右移1位,运算结果num的值为1
num开始的值用二进制表示为(只取低4位) 0010右移一位之后就变成了 0001了
QTextStream 重载了操作符 >> 并定义了下面这个函数:
QTextStream & operator>> ( QString & str )
由此可见可以将QTextStream 的内容写入一个QString中,如下:
QString line;
QTextStream in("test.txt",QIODevice::ReadOnly);//以只读模式打开一个文本文件
in >> line;//读取一行文本内容到string中
除此之外呢,>> 也可以代表右移操作,这个就是它最本来的意思了.
比如说
int num = 2;
num = (num >> 1) //代表将num右移1位,运算结果num的值为1
num开始的值用二进制表示为(只取低4位) 0010右移一位之后就变成了 0001了