C++ 模块不在节点内(节点必须由模块中的@Node属性标记)
每当我运行OMNet++模拟时,它都会给我一个运行时异常 “模块(cModule)CompleteSecenarioIncludingGateway(id=1)中出错” 网络初始化期间:模块不在节点内(节点必须 由ned模块中的@node属性标记。“C++ 模块不在节点内(节点必须由模块中的@Node属性标记),c++,omnet++,C++,Omnet++,每当我运行OMNet++模拟时,它都会给我一个运行时异常 “模块(cModule)CompleteSecenarioIncludingGateway(id=1)中出错” 网络初始化期间:模块不在节点内(节点必须 由ned模块中的@node属性标记。“ 我想知道它是什么意思以及如何解决它。表示网络中节点(例如主机、路由器)的每个模块都应标记@node属性(在最新版本的INET中,它被称为@networkNode,而不是@node)。以下是如何在INET的NodeBase.ned中完成的: modu
我想知道它是什么意思以及如何解决它。表示网络中节点(例如主机、路由器)的每个模块都应标记@node属性(在最新版本的INET中,它被称为@networkNode,而不是@node)。以下是如何在INET的NodeBase.ned中完成的:
module NodeBase like INetworkNode
{
parameters:
@networkNode
@display("bgb=,448");
...
@networkNode实际上是一个标记,因此放置在节点内的任何模块都可以在模块父链中向上移动,并找到哪个模块代表它所在的实际主机。这有助于主机内的模块更轻松地导航。例如,如果模块对主机的物理位置感兴趣,它将开始在模块链上向上移动,并每次检查此模块是否具有@networkNode属性。如果有,按照惯例,它应该有一个名为“mobility”的子模块,可用于检索位置。您应该从
*.ned
文件(CompleteScenarioIncludingGateway
)中提供代码,谢谢Rudi。鲁迪,我非常需要帮助。请查看此链接