swift - 由于“内部”保护级别,“MyEnum”无法访问
问题描述
我的框架中的一个类中有一个带有原始值的枚举,我想与另一个类一起使用。我收到以下错误。
'types' is inaccessible due to 'internal' protection level
从这条线...
var table = sdb?.getTable(LoggerStartup.eTables.types)
这是我框架中的枚举
public class LoggerStartup : NSObject
{
public enum eTables
{
static let users = 100
static let types = 200
static let items = 300
static let measures = 400
}
}
从我所见,我不确定我是否可以拥有原始值?
解决方案
这些static
属性仍然internal
是默认的,你也必须声明它们public
:
public class LoggerStartup : NSObject
{
public enum eTables
{
public static let users = 100
public static let types = 200
public static let items = 300
public static let measures = 400
}
}
当然,如果您使用实际的枚举,这会有所不同:
public enum eTables: Int {
case users = 100
case types = 200
case items = 300
case measures = 400
}
在这种情况下,您将能够eTables.types
直接使用。
推荐阅读
- python - SQLAlchemy中ForeignKey的查询过滤器
- r - 尝试 ggplot 时 R 4.1.0 崩溃
- python - 在 3D MatplotLib Scatterplot 中绘制超平面
- java - 如何在 Eclipse 中从 rubenlagus 导入 Telegram Bot API
- r - 根据对 Shiny 中上一个菜单的响应显示不同的选择菜单
- mysql - 如何返回第二个表中为空的客户和附加信息
- windows - OpenSSL 致命错误 LNK1112:模块机器类型“x86”与目标机器类型“x64”冲突
- amazon-web-services - AWS S3如何将文件夹设为今天的日期
- powershell - 在读取 CSV 和输出 TXT 文件的 PowerShell 脚本中需要我的错误/遗漏的 ID
- python-3.x - 为什么 python asyncio 代码卡在第一个并发任务上?