Swift如何使变量在文件中为全局变量,而不是共享到其他文件

Swift如何使变量在文件中为全局变量,而不是共享到其他文件,swift,Swift,我想在一个文件中声明一些全局变量,这样我就可以在该文件的不同函数中使用它们,但当我这样做时,我发现我可以在不同的swift文件中引用它们。有没有办法使它们保持全局,但不能从其他文件引用。我希望能够将大量代码从一个文件复制并粘贴到另一个文件中,但当我这样做时,会出现“无效重新声明”错误。我的问题有什么解决方案吗?如果在类声明之后声明变量,则应该可以在该文件中访问该变量,但不能在其他文件中访问。例如: class Hello: UIViewController { var myVariable

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

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

class Hello: UIViewController {

  var myVariable: String = "" // This Variable accessible throughout the  file
}
我想在文件中声明一些全局变量,以便 在该文件的不同功能中使用它们。但当我这样做时,我发现我可以在不同的swift文件中引用它们

如果希望仅在类中使用该变量,请将其声明为private而不是public

class MyClass: UIViewController {

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

}

请注意,声明为公共的变量或字段没有可访问性限制。但是,私有成员仅在其类中可见。

如果要创建全局变量,请选中此选项

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

 CommonFunctions.GlobalVariable().screenheight

啊,我现在明白了,我把它放在didmovetoview()方法中。把它放在上面,但放在类声明下面是有效的
 CommonFunctions.GlobalVariable().screenheight