c++ - 2个int变体之间的管道运算符是什么意思?

标签 c++

<分区>

有以下代码-

    enum FileOpenFlags {
    flagREAD = 1, flagWRITE = 2,
    flagCREATE = 4, flagEND = 8,
    flagAPPEND = flagWRITE | flagEND,
    };
    cout << flagAPPEND << endl;

给出 10 。你能解释一下 | 做了什么吗?

最佳答案

它做了一个 bitwise or的两个值。

关于c++ - 2个int变体之间的管道运算符是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12165094/

相关文章:

c++ - 如何使用 fgets 获取文本并保存 std::string

c++ - C++ 中是否存在比 long long int 更大的类型?

c++ - 为什么 b[2] 为假?

c++ - 在 C++ 中使用 vector 的 vector 进行基数排序会崩溃

c++ - 获取通过宏生成的函数的地址

c++ - 无法为 X.radio 创建中等可视化,因为找不到网络节点可视化 - Omnet++

c++ - MySQL 在 DROP FUNCTION 上崩溃

c++ - strtod 不会在错误输入时设置 errno

c++ - 如何在“文件夹选择”对话框中将“我的音乐”作为默认选定路径

c++ - 套接字:测量自上一条消息以来耗时