Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何知道Swift中特定全局变量的来源?_Swift_Variables - Fatal编程技术网

如何知道Swift中特定全局变量的来源?

如何知道Swift中特定全局变量的来源?,swift,variables,Swift,Variables,与Java一样,如果变量位于不同的文件中,我们必须如下所示: Ex:Definition.java: public final static Stirng WEB_URL = "https://www.google.com" Ex:main.java:definition.WEB\u URL 所以我可以很容易地知道变量来自哪里。但是在Swift中,当您将变量保留在不同的文件中时,您只需调用WEB_URL而无需“定义”,我该怎么办 因为我尝试了struct和class,它们都

与Java一样,如果变量位于不同的文件中,我们必须如下所示: Ex:Definition.java:

public final static Stirng WEB_URL = "https://www.google.com"
Ex:main.java:definition.WEB\u URL

所以我可以很容易地知道变量来自哪里。但是在Swift中,当您将变量保留在不同的文件中时,您只需调用WEB_URL而无需“定义”,我该怎么办


因为我尝试了struct和class,它们都会创建一个新实例,而不是原始实例。

如果您想创建一个全局变量,可以在project中的任何位置访问该变量,那么您可以创建一个常规类并创建一个静态变量,如:

Myclass {

    static let str_Url = "link"
}
在这里,您可以使用类名或

Myclass {

  static let sharedInstance = Myclass()
  
  func myFunc() {

  }
}

现在,您可以访问此calss变量,并在您要查找静态变量的任何位置使用其变量<代码>结构MyConstants{static let webURLString=”https://google.com“}和正在使用的
让str=MyConstants.webURLString
?@Larme非静态变量如何?与此类似,该值将被更改,但所有控制器都有机会在Swift中使用它
static
,表示“类/结构变量,而不是实例变量”。是
let
/
var
定义了可变性。因此,如果值可能会更改,请使用
static var
而不是
static let
。理解实例属性和静态属性之间的差异是关键。明白了,谢谢你们两位:D