在 python 中,这样的语句:

from module import function354

有道理,因为 Python 是一种解释器语言,我不希望 Python 加载所有 353 个其他函数。

Fortran 有一个类似的结构:
use module, only : function354

我为什么要用这个?编译器无论如何都会创建一个 *.mod 文件,编译所有函数。如果我指定 only 语句,是否有任何性能优势(在编译或运行时)?

我可以看到避免命名冲突可能会有所帮助,但除此之外我并没有真正理解这一点。

最佳答案

两个主要原因

  • 如您提到的那样,为了避免名称冲突,但似乎并不重要。在大型的复杂代码中,任何有助于可维护性的东西都是额外的好处,因此use, only是有助于此
  • 的有用补充
  • 它自动记录实体的来源。鉴于第一次要阅读的大型复杂代码,我几乎可以保证您将花时间研究哪个模块来自哪个模块,因此use, only是一个不错的功能,可帮助提高代码的可读性

  • 您不仅需要快速的代码-可维护性至关重要,更重要的是正确性!

    关于fortran - 为什么我应该在 Fortran 中使用 "use, only",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51686745/

    10-11 15:23