ios - 无法分配给 ""中的 'self'

标签 ios swift struct

<分区>

我正在尝试为结构内的属性分配一个新值,但是当我尝试这样做时,我得到“无法在‘self’中分配‘x’”。

struct gallery {

var x = 0


let picture = [
    "landscape.jpg",
    "paris.jpg",
    "polygons.jpg"
]

func getImage() -> String{
    if (x > picture.count){
        x = 0
        return picture[x]
    } else{
        return picture[x]
    }
}
} 

最佳答案

如果一个方法改变了你的实例,你必须用 mutating 关键字来指明它,如下所示:

mutating func getImage() -> String {

        if (x > picture.count) {

            x = 0
            return picture[x]

        } else {
            return picture[x]
        }
    }

关于ios - 无法分配给 ""中的 'self',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29721770/

相关文章:

ios - 使用多个 AVPlayer 时如何检测哪个视频结束了?

ios - 有没有办法在主 iOS 应用程序中打开或关闭 Sticker Pack 应用程序扩展?

ios - 线程安全属性字符串高度计算

ios - 如何在我的应用程序中使用变量 (Bool) 来控制在应用程序后台时是否可以显示远程通知?

ios - 三个比例 View 自动布局

ios - 将 UITabBarController 与 UINavigationController 结合使用 - Swift 3

iphone - 如何从 NSDictionary 中提取特定数据对于某些键具有相等的值到组合的 NSArray 中

struct - 显示/打印/等结构 julia jupyter

c - 打印给定 pid 的子进程(MINIX)

c - 错误 [Pe028] : expression must have a constant value