如何在Swift中的文件之间共享常量和变量



如何在Swift中以简单的传统方式在文件之间共享变量?我知道访问者方法-

访问者示例

   SomeOtherClass.getMyVar()

但我只想找

所需用途

    myVar

上下文

这相当于在C中的工作方式,使用头文件&进口这可能吗?

在Swift中不需要导入某些内容。

您有两个选项(都在任何类之外声明):

  • 一个全局变量

    let kNAME_KEY = "name"
    let kAGE_KEY = "age
    

    用调用

    let name = kNAME_KEY
    
  • 嵌入结构中的静态变量

    struct Key {
     static let Name = "name"
     static let Age = "age"
    }
    

    用调用

    let name = Key.Name
    

Swift的设计强烈推荐使用结构的方式。

我不推荐它,但要回答您的问题,您可以执行以下操作:

class Foo {
    class var Test: String {
        return "MyString"
    }
}
class Bar {
    func someFunc(){
        print(Foo.Test)
    }
}

在那之前,我相信会有人来举更好的例子。。给你:)

katleta3000是正确的。作为一个"传统"的C开发人员,很难相信,但这是正确的。只需在任何其他范围之外的文件中定义一个var(例如在类中),就可以神奇地在任意位置访问它。

示例

  • "var someVar=1"在ViewController.Swift的第11行,在类ViewController:UIViewController的第13行上方

  • 现在你可以在项目中的任何文件中使用someVar,例如在AppDelegate中使用。swift是很好的

(上下文)作为一个传统主义者,我内心为此哭泣。。。

我在Swift项目中做了什么1:新建Swift文件2:在其中创建一个结构和静态常量。3:只需使用YourStructName.baseURL

注意:创建初始化后只需很少的时间,因此它将在2-5秒后显示在其他视图控制器中。

import Foundation
struct YourStructName {
        static let MerchantID = "XXX"
        static let MerchantUsername = "XXXXX"
        static let ImageBaseURL = "XXXXXXX"
        static let baseURL = "XXXXXXX"
        }

最新更新