永发信息网

| 这个符号是什么意思 (C++ , qt)

答案:3  悬赏:50  手机版
解决时间 2021-03-22 14:01
  • 提问者网友:沉默的哀伤
  • 2021-03-21 13:58
| 这个符号是什么意思 (C++ , qt)
最佳答案
  • 五星知识达人网友:夜风逐马
  • 2021-03-21 14:15
我最近也在看qt
| 这个符号 就是 或
Save | Discard | Cancel
保存 或 不保存 或 取消

这个QMessageBox 这样能够生产三个button
分别是 保存, 不保存 , 取消
信号就是click
槽就是对应的save() discard() cancel()这些函数追问是或者的意思吗? 我看这个视频好像不是 
追答QFile::Text 是用文本打开
QFile::WriteOnly 是只写方式
两者就是 并 的关系追问那究竟是并 还是 或者 呢追答if(!file.open(QFile::WriteOnly | QFile::Text))//以只写方式打开文件,如果打开失败则弹出提示框并返回

并 对应 或
交 对应 与

是一个意思

如果你接触过硬件linux编程的话
举个例子
你在debug的时候会设置debug的等级
error的打印可能优先级最高 比如是0x01
warning的打印可能优先级次之 比如是0x02
info的打印可能优先级次之 比如是0x04
debug的打印最低 比如是0x08

那么如果你想打开所有的打印信息

就是设置 (0x01 | 0x02 | 0x04 | 0x08)

再比如单片机编程
你想设置晶振 并 设置关看门狗
(OSC_12M | WATCH_DOG_OFF)

你的问题和这些多少有些类似
我只是简单说来下我的理解 希望有帮助
全部回答
  • 1楼网友:山河有幸埋战骨
  • 2021-03-21 16:04
位运算 之 按位或
  • 2楼网友:有你哪都是故乡
  • 2021-03-21 15:16
按位或,两个数的二进制位上只要有一个是1,则结果就是1。如1011001 | 010位运算符 | 按位或 就是逐位比较 将不同的位值改为1 将相同的位值改为0
这里用这个符号是为了组合属性 属性的值是像这样定义的 比如第一个属性的值为 0x01 第二个是 0x02 第三个 0x04 二倍增加的 这样能保证每两个属性值进行比较时都不会存在相同位 可以用来组合属性
比如用一个unsigned int类型 来存储属性 可以用这个符号将 以上述方式定义的属性进行组合 函数可以根据这个类型的值 来判断出 是由那些属性组合成的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯