Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Include 将Netlogo源文件包含到另一个_Include_Netlogo - Fatal编程技术网

Include 将Netlogo源文件包含到另一个

Include 将Netlogo源文件包含到另一个,include,netlogo,Include,Netlogo,如何将过程从一个Netlogo文件包含到另一个Netlogo文件中?基本上,我想把遗传算法的代码从我的(相当复杂的)适应度函数中分离出来,但是,很明显,我想在遗传算法代码中使用适应度报告器,它将位于“fitness.nlogo”中,可能是“genetic.nlogo” 如果可以,程序是如何导入的,代码是如何执行的?它是像Python那样导入模块几乎执行模块中的所有内容,还是像C/C++那样盲目地“连接”文件 这可能是个愚蠢的问题,但我在谷歌上找不到任何东西。Netlogo文档中提到了一些关于\u

如何将过程从一个Netlogo文件包含到另一个Netlogo文件中?基本上,我想把遗传算法的代码从我的(相当复杂的)适应度函数中分离出来,但是,很明显,我想在遗传算法代码中使用适应度报告器,它将位于“fitness.nlogo”中,可能是“genetic.nlogo”

如果可以,程序是如何导入的,代码是如何执行的?它是像Python那样导入模块几乎执行模块中的所有内容,还是像C/C++那样盲目地“连接”文件

这可能是个愚蠢的问题,但我在谷歌上找不到任何东西。Netlogo文档中提到了一些关于
\uu includes
,这是一个实验性的关键字,可能会起到作用,但没有太多解释。也没有例子


有什么提示吗?我应该使用
\u includes
?它是如何工作的?

包含您使用的文件

__includes["libfile.nls"]
添加此项并按下“检查”按钮后,程序下拉菜单旁边将出现一个新按钮。您可以在那里创建和管理多个源文件

libfile.nls只是一个包含NetLogo代码的文本文件。它不是一个netlogo模型,它总是以.nlogo结尾,因为netlogo模型除了netlogo代码之外还包含很多其他信息

包含一个文件相当于在该点插入其所有内容。为了使其以类似于可重用库文件的方式工作,应该创建使用代理集和参数作为输入变量的过程,以独立于全局定义或接口设置

NetLogo用户手册中记录了该功能。

您可以创建一个文件libfile.nls,并在同一文件夹中创建主模型model.nlogo

然后,转到你的model.nlo,写下:

__includes["libfile.nls"]  

此文件包含您可以在模型中调用的报告器和过程

通过实验找到了我的答案。要包含的文件必须命名为“something.nls”,并且它像这样包含在主文件中:
\uu includes[“something.nls”]
。我不知道它探索了什么路径来找到它,但如果包含的文件与主文件位于同一文件夹中,它就会工作。命名空间似乎是连接的,就像C++一样。此外,
turtles拥有的[new property]
如果在包含的文件中找到,则表示荣幸。您对我在试验u includes时发现的内容给出了更简短、更清晰的解释。我希望人们在我发表上述评论之前阅读您的答案。在
code
选项卡中,我单击
包含
下拉列表,然后单击一个
新源文件
。现在,将打开一个新选项卡,其中包含
新文件
。如何命名此文件?