假设框架foo有(遗憾的是是公共的)类foo和一个公共 struct 帐户
func fetchClient(guid: String) -> Foo.Account? {
会产生编译器错误
"Account"不是类"Foo.Foo"的成员类型
在foo之外访问(公共)帐户的正确语法是什么? (很多关于类的脏话在这里别名为框架)
假设框架foo有(遗憾的是是公共的)类foo和一个公共 struct 帐户
func fetchClient(guid: String) -> Foo.Account? {
会产生编译器错误
"Account"不是类"Foo.Foo"的成员类型
在foo之外访问(公共)帐户的正确语法是什么? (很多关于类的脏话在这里别名为框架)
目前还没有这样的语法.另请参见SWIFT论坛上的this discussion个论坛,这些论坛正在讨论这一问题.
作为一种解决办法,您可以从Foo
导入just Account
struct :
import struct Foo.Account
现在你看不到Foo
级了,你可以说Foo.Account
级.
如果您还需要类Foo
或Foo
中的许多其他内容,您可以使用上面的技术将Foo.Account
的类型别名放在一个单独的文件中.
// this is the entirety of the file:
import struct Foo.Account
typealias FooAccount = Account
此外,如果您使用的是SPM,还可以使用模块别名功能将Foo
重命名为其他名称.请看Swift Evolution Proposal.