2014-11-23 1 views
14

Вопрос: В чем разница между using и import в июле, когда я строю свой собственный модуль?В чем разница между `use` и` import` в Julia при создании модуля?

Мое предположение, основанное на чтении документов:using используется для переноса другого модуля в пространство имен текущего модуля. import используется для передачи определенных типов/функций/переменных из других модулей в пространство имен текущего модуля.

Итак, как я ошибаюсь?

ответ

14

Джулия Modules documentation гласит:

import ключевое слово [...] только работает на одном имени, в то время. Он не добавляет модули, которые будут искал способ using. import также отличается от using тем, что функции должны быть импортированы с использованием import, которые должны быть дополнены новыми методами . [...] Функции, чьи имена видны только через using, не могут быть расширены.

(выделено мной.)

Например, вы можете использовать import добавлять методы Base.show к довольно-печать собственных типов, но не using ти.

Существует также importall, который импортирует все экспортированные имена модуля.

+0

Очень ясное спасибо (+ 1 + Tick). Я действительно прочитал этот точный проход, прежде чем задавать вопрос, но явно не расшифровал смысл. Ваш акцент был очень полезен. –