我想从OMNeT ++中收到的消息中读取数据并存储它。
这就是我的消息格式:
packet ServerMsg
{
String code;
String text;
}
我知道如何构建和发送它,但不知道如何在接收点反汇编它。
现在我想在'a'中存储'code',在'b'中存储'text'。
void Server::handleMessage(cMessage *msg) {
String a;
String b;
}
去这儿的方式是什么?
答案 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;
}