OMNeT ++反汇编收到的消息

时间:2014-11-24 14:23:19

标签: c++ omnet++

我想从OMNeT ++中收到的消息中读取数据并存储它。

这就是我的消息格式:

packet ServerMsg
{
    String code;
    String text;
}

我知道如何构建和发送它,但不知道如何在接收点反汇编它。

现在我想在'a'中存储'code',在'b'中存储'text'。

void Server::handleMessage(cMessage *msg) {
   String a;
   String b;
}

去这儿的方式是什么?

1 个答案:

答案 0 :(得分:1)

您需要将传入的消息强制转换为适当的类型,然后才能访问消息类的所有成员变量:

#include "ServerMsg_m.h"
...    
void Server::handleMessage(cMessage *msg) {
   String a;
   String b;
   ServerMsg *pkt = check_and_cast<ServerMsg *>(msg);
   a = pkt->a;
   b = pkt->b;
}