访问不同文件

时间:2017-03-28 18:24:03

标签: swift swift-playground

我仍然是一个快速的新手,我无法在几件事上得到明确的答案。

到目前为止,我一直在操场上使用单个文件。 如果我想使用更多文件,如何从控制视图的主文件中创建的类中访问数据(变量和函数)?

据我所知,有多个文件只是为了方便,所以我不能再写了。

(也在旁边)当一个功能有私人,公共或只是' func'

时,它意味着什么?

我正在使用swift 3游乐场

谢谢

1 个答案:

答案 0 :(得分:3)

使事物public可以从其他模块导入它们。使它private只能通过其包含范围内的方法(封装)来访问它。对于位于顶层的代码,此范围是它所在的整个.swift文件。如果没有任何访问修饰符(只是“func”),您的内容将默认为internal ,这意味着它可以从同一模块中的任何其他代码访问,但不能通过不同模块中的代码访问。

一个特殊情况是fileprivate修饰符,它限制对代码所在的.swift文件的访问。对于不在类或结构中的代码,这与{完全相同的事情} {1}}。一些Swift设计者不鼓励使用这个修饰符,它可能会在未来版本的Swift中删除。

Swift中有第五个访问修饰符private,它与open完全相同,除了它还允许子类化,并且只适用于类。这个很少使用,但对某些库接口很有用。

要导入模块中的所有public符号,请使用

public

要导入single import Module 符号,请使用

public