【NS2】tcl与c++互相调用/传参

在NS2,做实验的时候,为了能通过循环配合传值实验,一直找不到tcl传参给c++的方法,网上的只po出一部分看不懂,只能通过源码自己研究。最后的解决办法就是,模仿源码的操作,以下通过tcl→ex→sat-iridium.tcl为例子,只需要简单两步。

问题1:tcl传参给c++

首先,通过观察可以发现,tcl的例子文档里已经是有可以输入参数的例子,然后接下来就是通过其变量名字,例如“data_driven_computation”,找到其位置,再自定义一个变量即可。
在这里插入图片描述
经过一番努力,找到如下位置,然后下面两个q0_q02_就是本人自定义的变量了,接着还没完,还要去.h文件声明一下
在这里插入图片描述
然后 通过ctrl点击一下变量就跳转到这个文件
在这里插入图片描述
再这下面,也学着定义一下
在这里插入图片描述
最后就是在tcl文件里面 定义一下,大功告成!!然后就可以直接在C++文件调用该设置的值了。
在这里插入图片描述
用法的话,可以通过传参配合switch语法,选择算法函数,这样就不用每次都得通过注释切换函数。

问题2:c++传参给tcl

通过Ctrl+F查找tcl,发现很多这样的表达,原来这就是在c++执行tcl接口,字符串的内容就是tcl命令。

在这里插入图片描述
所以,首先定义在tcl定义一个变量,注意两个变量顺序
在这里插入图片描述
然后在command里面定义,学着上面并定义调用即可。
在这里插入图片描述
最后通过结果可以看出,传参成功。
在这里插入图片描述
用处:通过参回去给,确认在调用什么函数,例如多个算法性能比较时,可以在运行前确认算法是否正确被调用。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值