我有一个主类,还提供一个命名空间:
class A { }
和通过扩展名添加的嵌套类(全部为了使用单独的文件):
extension A { class B { } }
我想通过扩展嵌套类(B)来添加功能;我试过了:
extension A.B { }
我得到“’B’不是”A“的成员类型。
(我也尝试了一些不那么合理的事情,但我会省略他们,以避免尴尬。阅读Swift文档和谷歌的“快速嵌套类扩展”也没有得到答案。)
任何想法如果和如何可以实现?
更新:
这个代码在单个文件(或游乐场)中的预期工作,感谢user3441734试用了!
当3个部分在单独的文件中时,仍然不起作用,也许是Swift编译器当前实现的一个bug。我会向苹果提交错误报告。
我遇到类似的问题,似乎编译器正在尝试处理在其中定义的那个文件之前扩展嵌套类的文件。所以你有这个错误,说A没有成员B.
我找到的解决方案是去您的目标设置,打开构建阶段。
在“编译源”部分中,您应该将文件放在您将其扩展的文件上面定义的嵌套类。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。