swift编译器显示预期的声明错误? [复制]

Posted

技术标签:

【中文标题】swift编译器显示预期的声明错误? [复制]【英文标题】:swift compiler shows Expected declaration error? [duplicate] 【发布时间】:2015-08-07 09:00:14 【问题描述】:

当这段代码用AllListViewController编写并运行时,编译器显示Expected Declaration错误:

for list in lists
    let item = ChecklistItems()
    item.text = "Item for \(list.name))"
    list.items.append(item)
       

【问题讨论】:

你到底在问什么(我不明白你的问题/问题)? 其实代码是: 对于列表中的列表 let item = ChecklistItem() item.text = "Item for (list.name)" list.items.append(item) 我编辑了 yoru 问题,它可能很快就会包含新代码,但请更准确地了解您的问题。另外,也许考虑使用您的母语的 SO 版本(有许多语言的姐妹网站)。 请发布您遇到的实际错误,或者最好是屏幕截图。 【参考方案1】:

我认为你的代码在课堂上的错误位置,就像this 问题一样。

所以将它移动到任何函数或viewDidLoad 方法中。

希望它会有所帮助。

【讨论】:

不错的猜测。完全没看到课 工作就像一个魅力!【参考方案2】:

你有如下图所示的代码:

好像您的代码在函数之外。如果allListViewController 是您的UIViewController 类,其中编写了for 循环代码,请确保代码应位于allListViewController 类的任何函数的主体内。不能在外面。

示例:

override func viewDidLoad() 
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    for list in lists
        let item = ChecklistItems()
        item.text = "Item for (list.name))"
        list.items.append(item)
    

您可以在函数体之外初始化/声明变量(将是全局变量)

【讨论】:

【参考方案3】:

当我们在某个函数中添加应该添加的代码然后调用时,会显示error: expected declaration

因为只有 Property Declaration 应该直接进入 class 。 所以当我们使用任何属性时,它应该发生在某个函数中。

这是我创建的活动指示器类的示例。

在外面写代码时出错。

写在函数里面就可以了。

【讨论】:

以上是关于swift编译器显示预期的声明错误? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

在我将编译器设置设置为支持 c++11 后,我仍然收到错误“stoi”未声明。为啥? [复制]

使用 Swift 的预期声明错误

函数指针声明编译错误

如何避免swift 3中的错误无效重新声明? [复制]

预期类型更改时如何获得编译器错误

为啥类中的 stringstream 成员会导致编译时错误? [复制]