连接多个消息内容时出错 omnet++
error in the concatenation of multiple message contents omnet++
我有这段代码,我从两个进程块(Hey.cc 和 See.cc)的句柄消息中获取消息并将其组合成一条新消息(在 There.cc 中)但是好像不行请帮忙
Hey.cc
#include "Hey.h"
Define_Module(Hey);
void Hey::initialize()
{
// TODO - Generated method body
cMessage *mmsg = new cMessage("hello");
send(mmsg,"hello");
}
void Hey::handleMessage(cMessage *msg)
{
// TODO - Generated method body
}
和See.cc
#include "See.h"
Define_Module(See);
void See::initialize()
{
// TODO - Generated method body
cMessage *smsg = new cMessage("hi");
send(smsg,"tempexit");
}
void See::handleMessage(cMessage *msg)
{
// TODO - Generated method body
}
和There.cc
#include "There.h"
#include "See.h"
#include "Hey.h"
#include <string>
Define_Module(There);
void There::initialize()
{
// TODO - Generated method body
}
void There::handleMessage(cMessage *msg)
{
cMessage *smsg = new cMessage("hi"); // supposed to be from See.cc
cMessage *mmsg = new cMessage("hello"); // supposed to be from Hey.cc
cMessage strNew = *smsg;
cMessage sstrNew = *mmsg;
cMessage rNew = strNew + sstrNew ;
EV << rNew ;
}
send
方法的第二个参数应该是the name of gate或指向cGate
对象的指针。 Hey.ned
是否包含hello
输出门,See.ned
是否包含tempexit
门?
Class cMessage
没有 operator+
所以一个 不能 添加两个 cMessage
.顺便问一下:您对此次行动的结果有何期待?如果封装消息,应该使用encapsulate().
我有这段代码,我从两个进程块(Hey.cc 和 See.cc)的句柄消息中获取消息并将其组合成一条新消息(在 There.cc 中)但是好像不行请帮忙
Hey.cc
#include "Hey.h"
Define_Module(Hey);
void Hey::initialize()
{
// TODO - Generated method body
cMessage *mmsg = new cMessage("hello");
send(mmsg,"hello");
}
void Hey::handleMessage(cMessage *msg)
{
// TODO - Generated method body
}
和See.cc
#include "See.h"
Define_Module(See);
void See::initialize()
{
// TODO - Generated method body
cMessage *smsg = new cMessage("hi");
send(smsg,"tempexit");
}
void See::handleMessage(cMessage *msg)
{
// TODO - Generated method body
}
和There.cc
#include "There.h"
#include "See.h"
#include "Hey.h"
#include <string>
Define_Module(There);
void There::initialize()
{
// TODO - Generated method body
}
void There::handleMessage(cMessage *msg)
{
cMessage *smsg = new cMessage("hi"); // supposed to be from See.cc
cMessage *mmsg = new cMessage("hello"); // supposed to be from Hey.cc
cMessage strNew = *smsg;
cMessage sstrNew = *mmsg;
cMessage rNew = strNew + sstrNew ;
EV << rNew ;
}
send
方法的第二个参数应该是the name of gate或指向cGate
对象的指针。Hey.ned
是否包含hello
输出门,See.ned
是否包含tempexit
门?Class
cMessage
没有operator+
所以一个 不能 添加两个cMessage
.顺便问一下:您对此次行动的结果有何期待?如果封装消息,应该使用encapsulate().