C++ getTransmissionChannel()正在使omnet崩溃++;模拟

C++ getTransmissionChannel()正在使omnet崩溃++;模拟,c++,omnet++,C++,Omnet++,我在我的简单模块中定义了这个getTransmissionChannel()。 对于以下模拟连接,它工作得非常好: CustomedNode1.Netport <--> LinkDefinedChannel <--> mySwitch.connectedToPort1; CustomedNode2.Netport <--> LinkDefinedChannel <--> mySwitch.connectedToPort2;

我在我的简单模块中定义了这个
getTransmissionChannel()
。 对于以下模拟连接,它工作得非常好:

    CustomedNode1.Netport <--> LinkDefinedChannel <--> mySwitch.connectedToPort1;
    CustomedNode2.Netport <--> LinkDefinedChannel <--> mySwitch.connectedToPort2;
    CustomedNode3.Netport <--> LinkDefinedChannel <--> mySwitch.connectedToPort3;
    CustomedNode4.Netport <--> LinkDefinedChannel <--> mySwitch.connectedToPort4;
    CustomedNode5.Netport <--> LinkDefinedChannel <--> mySwitch.connectedToPort5;
CustomedNode1.Netport链接定义通道mySwitch.connectedtoport 1;
CustomedNode2.Netport LinkDefinedChannel mySwitch.connectedtoport 2;
CustomedNode3.Netport链接定义通道mySwitch.connectedToPort3;
CustomedNode4.Netport链接定义通道mySwitch.connectedToPort4;
自定义节点5.Netport链接定义通道mySwitch.connectedToPort5;
然后,我将node5替换为另一种类型的节点,但使用相同的端口,生成的新连接为:

    CustomedNode1.Netport <--> LinkDefinedChannel <--> ibSwitch.connectedToPort1;
    CustomedNode2.Netport <--> LinkDefinedChannel <--> ibSwitch.connectedToPort2;
    CustomedNode3.Netport <--> LinkDefinedChannel <--> ibSwitch.connectedToPort3;
    CustomedNode4.Netport <--> LinkDefinedChannel <--> ibSwitch.connectedToPort4;
    mySwitch.connectedToPort5 <--> gatewayNode.Netport ;
CustomedNode1.Netport-LinkDefinedChannel-ibSwitch.connectedtoport-1;
CustomedNode2.Netport链接定义通道ibSwitch.connectedToPort2;
CustomedNode3.Netport链接定义通道ibSwitch.connectedToPort3;
CustomedNode4.Netport链接定义通道ibSwitch.connectedToPort4;
mySwitch.connectedtoport 5 gatewayNode.Netport;
现在模拟崩溃,显示未找到传输通道

我不知道突然发生了什么事。我刚换了一个新的 具有相同类型网络端口的节点


getTransmissionChannel()
返回传输。如果在链接中未指定任何通道,OMNet++将以
cIdealChannel
替换,这基本上意味着没有为连接指定通道对象

在您的情况下,在更换节点后,请重新连接
mySwitch.connectedToPort5网关节点.Netport未定义任何通道。因此IDE替换为
cIdealChannel
,因此
getTransmissionChannel()
找不到任何传输通道,因为没有为此连接定义通道对象

所以,取而代之的是

mySwitch.connectedToPort5网关节点.Netport

mySwitch.connectedtoport 5 linkdefinedchannelgatewaynode.Netport;
现在
getTransmissionChannel()
应该能够获取传输通道,因为您正在为此连接定义一个通道对象

mySwitch.connectedToPort5 <--> LinkDefinedChannel <--> gatewayNode.Netport ;