朱莉娅new()
的功能是什么?这个问题是否足够具体?
我正在查看模块Mocha
,其中new(...)
被广泛使用,但我没有看到new()
的任何定义,只使用它,也没有找到参考在朱莉娅文档中。
我认为它可能会在Mocha
正在使用的模块中定义,但我认为我可以从REPL中学习带有Mocha.new
的new(),但是回来了与ERROR: UndefVarError: new not defined
。
对于我的生活,我无法弄清楚new(...)
正在做什么。如果它听起来不像朱莉娅的共同点,我该怎么做才能尝试追踪它的定义?
答案 0 :(得分:5)
来自http://docs.julialang.org/en/release-0.4/manual/constructors/
内部构造方法
外部构造方法成功 解决为其提供额外便利方法的问题 构造对象时,它们无法解决其他两个用例 在本章的介绍中提到:强制执行不变量, 并允许构建自引用对象。对于这些 问题,需要内部构造方法。内部构造函数 方法很像外部构造方法,有两点不同:
- 它在类型声明的块中声明,而不是 在它之外,就像正常的方法一样。
- 它可以访问一个名为
醇>new
的特殊本地存在函数,该函数创建块类型的对象。