Ios 源文件夹中的文件无法访问其他文件';Xcode游乐场中的公共类或功能

Ios 源文件夹中的文件无法访问其他文件';Xcode游乐场中的公共类或功能,ios,swift,xcode,macos,xcplayground,Ios,Swift,Xcode,Macos,Xcplayground,对于我来说,我在任何地方都找不到解决方案,所以在我看来这是一个Xcode游戏场bug 在Sources文件夹中,尽管我将一个类声明为public,但当我尝试从单独的文件(在Sources文件夹中)访问该类时,编译器将给我一条错误消息,说明它无法在范围中找到该类 但是,当我运行游乐场并忽略消息时,程序将成功构建并运行,错误消息将消失,直到我开始修改代码 奇怪的是,它不会发生在应用程序项目中;它只发生在操场上 我用一个名为“测试”的游乐场文件做了一个简单的演示,并截屏了所发生的事情,您可以在下面的附

对于我来说,我在任何地方都找不到解决方案,所以在我看来这是一个Xcode游戏场bug

在Sources文件夹中,尽管我将一个类声明为public,但当我尝试从单独的文件(在Sources文件夹中)访问该类时,编译器将给我一条错误消息,说明它无法在范围中找到该类

但是,当我运行游乐场并忽略消息时,程序将成功构建并运行,错误消息将消失,直到我开始修改代码

奇怪的是,它不会发生在应用程序项目中;它只发生在操场上

我用一个名为“测试”的游乐场文件做了一个简单的演示,并截屏了所发生的事情,您可以在下面的附加照片中看到,请告知!非常感谢

尝试过的解决方案包括:

  • 重新启动Xcode
  • 重启Mac
  • 删除Xcode并重新安装Xcode
  • 在范围中找不到Person类,尽管它被标记为public

    但是Person类被标记为public

    不管怎样,代码都能成功编译

    运行操场后错误消失,但在我修改它后立即返回

    奇怪的是,它不会发生在应用程序项目中;它只发生在操场上

    事实上,这一部分并不奇怪。应用程序项目是可预测的。操场是魔鬼的杰作,很容易让他们表现不好

    你所看到的肯定是一个bug,特别是因为它不容易被别人复制。在我的机器上,没有错误消息,一切正常:


    您可以尝试将
    import test\u Sources
    添加到这个麻烦的文件中,但我不能保证它会有所不同。我真正建议的是不要去操场。

    谢谢你的及时回复!我不确定作为可测试模块导入的语法是什么,那会是“@testable”吗?注意到,操场上乱七八糟的。。。什么可以代替操场?因为我正在读的大多数swift书籍都要求我使用操场,谢谢!