Swift如何在文件中创建变量global,但不与其他文件共享

时间:2015-08-13 07:10:10

标签: swift

我想在文件中声明一些全局变量,以便我可以在该文件的不同函数中使用它们,但是当我这样做时,我看到我可以在不同的swift文件中引用它们。是否有办法使它们保持全局但不能从不同的文件中引用。我希望能够将大量代码从一个文件复制并粘贴到另一个文件中,但是当我这样做时,我得到“无效重新声明”错误。我的问题有解决办法吗?

3 个答案:

答案 0 :(得分:2)

如果在类声明后声明变量,则应该可以在整个文件中访问它,但不能在其他文件中访问它。例如:

class Hello: UIViewController {

  var myVariable: String = "" // This Variable accessible throughout the  file
}

答案 1 :(得分:0)

  

我想在文件中声明一些全局变量,以便我可以   在该文件中的不同函数中使用它们。但是当我这样做时,我看到我可以在不同的swift文件中引用它们

如果您只想在班级中使用该变量,请将其声明为私有而非公开。

class MyClass: UIViewController {

  private var myVariable: String = "" // myVariable is private now

}

请注意,声明为public的变量或字段没有可访问性限制。但是,私人成员只能在其班级中看到。

答案 2 :(得分:0)

如果要创建全局变量,请检查此link

 class CommonFunctions{
  // Example for global
   struct GlobalVariable {
            let screenheight = UIScreen.mainScreen().bounds.size.height;
            let screenwidth = UIScreen.mainScreen().bounds.size.width;
        }

 }

在其他视图控制器中使用该变量

 CommonFunctions.GlobalVariable().screenheight