如何在 OMNeT++ 中设置位

How to set a bit in OMNeT++

我有以下header结构

class MacHeaderBase extends FieldsChunk
{
    MacAddress srcAdd;
    MacAddress destAdd;
    MacTypes type; 
    bool controlbit; //a single bit
      
}

在 .cc 文件中,我需要将 controlbit 设置为 1 并在需要时将其重置为 0。

任何人都可以向我建议如何在 OMNeT++ 中将 controlbit 设置为 1 并将其重置为 0 的语法吗?

谢谢

OMNeT++中的消息编译器会自动生成设置和获取消息各个字段的方法。这些方法的名称分别包含 set + 字段的大写名称和 get + 字段的大写名称。
因此,如果 msg 是指向 MacHeaderBase 实例的指针,则可以这样设置 controlbit

msg->setControlbit(true);

阅读示例controlbit

bool x = msg->getControlbit();

顺便说一句:您已将 controlbit 声明为布尔值,因此您应该避免为其分配整数。