我是OMNeT ++的新手,我现在正在学习OMNeT ++。我想根据教程运行tictoc模拟。首先我无法创建项目,它说错误:CoreException。有些人告诉我将文本文件编码更改为UTF-8。然后问题解决了。但是当我添加新的C ++源文件时,出现了另一个问题:无法解决。
#include <string.h>
#include <omnetpp.h>
class Txc1 : public cSimpleModule
{
protected:
virtual void initialize();
virtual void handleMessage(cMessage *msg);
};
Define_Module(Txc1);
void Txc1::initialize()
{
// Am I Tic or Toc?
if (strcmp("tic", getName()) == 0)
{
cMessage *msg = new cMessage("tictocMsg");
send(msg, "out");
}
}
void Txc1::handleMessage(cMessage *msg)
{
send(msg, "out");
}
cSimpleModule,Define_Module,cMessage ......所有这些都无法解决。
但令人难以置信的是,我可以构建项目。当我点击菜单运行 - &gt;运行为OMNeT ++模拟时,它运行正常。因此,编辑文本文件编码导致此问题是真的吗?如何解决它? ?
答案 0 :(得分:1)
您需要添加
using namespace omnetpp;
如果您希望在不使用cSimpleModule
前缀的情况下使用其中的类(cMessage
,omnetpp::
),则会包含标题。
创建自己的简单模块需要熟练掌握C ++。当然你可以边做边学,但是这个错误并不是特定于OMNeT ++,这是一个普遍的C ++编程错误。