swift – 如何在不需要实例化的情况下访问公共常量,如在C#中

swift – 如何在不需要实例化的情况下访问公共常量,如在C#中,第1张

概述不应该需要创建一个类的实例来访问公共常量.我最近开始在 Swift工作,所以我必须在这里遗漏一些东西. 在这个简单的例子中: public class MyConstants{ public let constX=1;}public class Consumer{ func foo(){ var x = MyConstants.constX;// Comp 不应该需要创建一个类的实例来访问公共常量.我最近开始在 Swift工作,所以我必须在这里遗漏一些东西.

在这个简单的例子中:

public class MyConstants{    public let constX=1;}public class Consumer{     func foo(){          var x = MyConstants.constX;// Compiler error: MyConstants don't have constX     }}

这个foo代码给出了编译错误.为了工作,我需要创建一个MyConstants的实例,如下所示:

public class Consumer{     func foo(){       var dummy = MyConstants();       var x = dummy.constX;    }}

不允许向constX添加static.

解决方法 使用struct with static types.struct更合适,因为在enum中你只能绑定一种类型的关联值,但你可以在两者中包含“任何类型的Type属性”.

public struct MyConstants{    static let constX=1;}public class Consumer{    func foo(){        var x = MyConstants.constX;    }}
总结

以上是内存溢出为你收集整理的swift – 如何在不需要实例化的情况下访问公共常量,如在C#中全部内容,希望文章能够帮你解决swift – 如何在不需要实例化的情况下访问公共常量,如在C#中所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1017477.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存