首页 > 解决方案 > 为什么操场表现得很奇怪。下面的代码显示编译器错误,并在运行代码时显示正确的输出

问题描述

有一个函数 checkSum。我在初始化 sumation 变量之前调用 checkScope()。如果我再次调用 checkScope(),代码运行完美。

func checkScope (){
     sumation = 6
     print(sumation)
   }
checkScope()
var sumation = 5
checkScope()

标签: iosswift

解决方案


Playground 非常有礼貌并且执行代码,尽管它是错误的。原因在于,与 Xcode 项目不同,您可以在 Playground 的顶层运行代码。

在项目中,您将收到Unresolved Identifier编译器错误。

规则是:变量必须在使用声明和初始化(在同一范围内) 。

尽管如此,编译器错误也显示在 Playground 中

在此处输入图像描述


推荐阅读