此代码在同一源文件中运行良好:
class SuperClass {
func sayHello() {
print("Hello")
}
}
class MyClass: SuperClass {
}
我现在移动超级班#39;在“我的框架”中对另一个源文件进行分类'嵌入式框架,并将访问控制设置为public:
public class SuperClass {
public func sayHello() {
print("Hello")
}
}
应用源文件:
import MyFramework
class MyClass: SuperClass {
}
然而,我得到了一个"使用未申报的类型' SuperClass'"错误。
" MyFramework"框架必须被识别,因为导入语句不会导致错误(例如,我没有得到#34;没有这样的模块' MyFramework'"错误)。
如果我将应用源文件更改为:
import MyFramework
class MyClass: MyFramework.SuperClass {
}
...然后我得到一个"没有名为' SuperClass'在' MyFramework'"
值得一提的是,MyFramework DOES中的相关源文件已选中Target Membership部分中的框(对于MyFramework,而不是MyFrameworkTests)。
MyFramework已添加到'链接框架和库中。部分。
我尝试了一个干净的构建,并在一个新的空项目中尝试了上面的例子,但我遇到了同样的问题。
如何跨模块/框架进行子类化?