我在omnetpp项目的中间,它在运行时给我这个错误:
抛出'omnetpp :: cRuntimeError'what():(omnetpp :: cModule)实例后调用terminate:对象没有 关联的cComponentType(也许omnetpp :: cModule不是从 cModule / cChannel?)
我认为问题在于源文件,因为ned文件非常简单,并且可以与其他.cc文件一起使用,但是也许是两者的结合。
这是.cc文件的第一部分:
using namespace omnetpp;
class Nodo_centrale;
class Sensore;
class Net : public cSimpleModule
{
std::unique_ptr<Nodo_centrale> NodoCentrale;
std::unique_ptr<Sensore> Sensore1;
std::unique_ptr<Sensore> Sensore2;
public:
// The following redefined virtual function holds the algorithm.
virtual void initialize() override;
virtual void handleMessage(cMessage *msg) override;
};
Define_Module(Net);
然后我声明了两个类(Sensore,Nodo_centrale)。
已修复的文件如下:
simple Net
{
parameters:
@display("i=block/routing");
gates:
inout gate[];
}
network Nodes
{
types:
channel Channel extends ned.DelayChannel {
delay = 100ms;
}
submodules:
Node[3]: Net;
connections:
Node[0].gate++ <--> Channel <--> Node[1].gate++;
Node[0].gate++ <--> Channel <--> Node[2].gate++;
}