Swift 包访问修饰符
Swift Package access modifiers
我创建了一个简单的 Swift Package
,里面有一个 UI class
。
我成功上传到一个 repo 并在项目中使用它。
当我第一次尝试导入它并在主项目中使用它时,访问修饰符出现问题,因为我的 package
是 not public
但定义为 class MainView: UIView {}
。
在我将我的包更改为 public class MainView: UIView {}
之后,它运行良好。
我的问题:
这个包和我的项目中的其他包不一样吗类?为什么要与 public
一起使用?
有没有办法在没有 public access modifier
的情况下使用我的包 类?
默认访问修饰符是“内部”,表示它在项目本身内。 Swift 包(框架)是您在项目中嵌套实施的第 3 方“项目”。这意味着您正在尝试访问另一个项目的代码。
TL;DR,不,如果你想达到功能
,你不能跳过使用 public 访问修饰符
我创建了一个简单的 Swift Package
,里面有一个 UI class
。
我成功上传到一个 repo 并在项目中使用它。
当我第一次尝试导入它并在主项目中使用它时,访问修饰符出现问题,因为我的 package
是 not public
但定义为 class MainView: UIView {}
。
在我将我的包更改为 public class MainView: UIView {}
之后,它运行良好。
我的问题:
这个包和我的项目中的其他包不一样吗类?为什么要与 public
一起使用?
有没有办法在没有 public access modifier
的情况下使用我的包 类?
默认访问修饰符是“内部”,表示它在项目本身内。 Swift 包(框架)是您在项目中嵌套实施的第 3 方“项目”。这意味着您正在尝试访问另一个项目的代码。
TL;DR,不,如果你想达到功能
,你不能跳过使用 public 访问修饰符