在D中,私人导入和普通导入之间有什么区别?

在D编程语言中,有什么区别

private import tango.io.File;

import tango.io.File;

有一段时间默认公开进口;也就是说,当您导入另一个模块时,其内容不仅可以从模块中看到,还可以从导入模块的任何模块中看到.

最后,它被更改为默认情况下它们是私有的.

但是,手动指定私有的几个原因:

>如果进口是在公共环境中,则可以公开进口.例如:

public:

// Lots of stuff

import blah; // oh no, everyone can see my imports!

> DMD充斥着与导入相关的错误.例如,选择性导入默认是公开的,尽管据称是私有的.这可能导致各种可怕的噩梦场景,其中一个模块中公开导入的符号(错误地)导致完全不同模块中的符号简单地消失并破坏您的程序.

换句话说,他们可能在Tango中是私人的,因为开发人员与DMD合作的时间太长,不能相信它能让这些东西正确.

相关文章
相关标签/搜索