多个文件中的模块名称相同

时间:2013-11-15 14:49:25

标签: import module d

我不知道它是否可能:我想跨多个源文件跨越模块,这样我就不必将模块中的每个类都放到一个文件中。 所以我有两个名为“FileA.d”,“FileB.d”的文件,我希望它们都以模块名称开头: “模块模块”

问题是后来,当我想导入它时,我甚至都不知道如何。

执行“导入FileA”会产生错误:

 "module amodule from file FileA.d must be imported as module 'amodule' "

我无法弄清楚这意味着什么,因为文档没有提及任何相关内容。 所以我的问题是 - 是否有可能,如果是的话 - 如何实现这一目标?

提前谢谢。

2 个答案:

答案 0 :(得分:2)

更好的方法是创建一个模块amodule并拥有public import FileA, FileB;

答案 1 :(得分:2)

出于好的理由,你想要的并不容易。模块级访问解决了C ++朋友的地狱。如果你来自C ++世界 - 认为模块中的所有类都是朋友。这是一个语言设计决定,一个非常好的,恕我直言。

阅读本节:http://dlang.org/cpptod.html#friends

简而言之:紧密耦合的类(C ++世界中的朋友)应该在同一个模块中。

D是一种模块化编程语言,请记住这一点,因为它使它与C ++或Java不同。