2010-03-23 42 views
6

我不知道如何导入模块的所有功能,而不必指定各个功能。在Erlang中,如何从模块导入所有功能?

+0

解析变换为救援? :-) – Zed 2010-03-24 07:46:34

+0

你为什么要那样做? – 2010-03-24 12:03:30

+0

@Roberta。你的意思是为什么我会导入函数或为什么有人会使用分析转换。 – Zubair 2010-03-24 12:31:04

回答

9

正如Christian所说,“从模块中导入所有功能是不可能的。”编译器没有import_all指令,我认为这是故意阻止过多的函数导入。

导入函数而不是完全限定它们M:F(...)通常是不好的风格。调用模块本地函数和另一个模块中的函数(代码加载规则)之间存在语义差异,所以我认为最好是明确地调用外部调用。对于导入字典/列表/集合模块函数,人们可能会做出例外,因为这些是通常理解的,在代码升级过程中不太可能改变。

7

无法从模块导入所有功能。

6

Erlang Programming Rules阅读:

不要使用-import,利用它使 代码难以阅读,因为你不能 在功能 定义什么模块直接看到。使用exref(交叉参考 工具)查找模块依赖关系。