我有一个简单的问题。在我的Xcode项目中,我有多个函数在多个视图控制器中多次使用。为了整理代码,我想制作另一个包含这些功能的文件,以使我在Viewcontrollers中的代码变得不那么繁琐。在C中,您可以使用头文件执行此操作,但是我不知道如何在Swift中执行此操作。我搜索了一些基本关键字,但在google上找不到任何内容。
答案 0 :(得分:4)
这不是您通常应该对C中的头文件执行的操作。这只是代码重用。
如果您具有纯函数,则只需定义函数并将其放入文件中即可。
如果您希望视图控制器具有访问方法,通常可以通过定义协议并通过扩展添加方法来实现。例如:
protocol ExtraMethods {}
extension ExtraMethods {
func doSomething() -> Int { return 1 }
}
class MyViewController: UIViewController, ExtraMethods {}
或者,您可以将方法添加到所有视图控制器,也可以将ExtraMethods
限制为视图控制器(extension ExtraMethods where Self: UIViewController
)。有许多扩展方法。但是没有一个与C头文件有关。
答案 1 :(得分:2)
尽管Swift确实具有头文件,但它们并不是您要查找的。 p>
如果您只想将代码分解成可重用的单元,那么Swift是一种面向对象的语言,您应该organize your code into classes和protocols (which I believe everyone else calls interfaces)一样。
关于将代码组织成多个文件,请使用Swift Package Manager。该文档包含许多简单的示例,例如example-package-playingcard。