gpt4 book ai didi

ios - 不可变值类型 [string] 只有名为 append 的可变成员

转载 作者:行者123 更新时间:2023-11-28 11:17:20 26 4
gpt4 key购买 nike

我正在尝试将一个新的 Store 对象附加到我的 User 结构中的 stores 数组中...我向我的 Struct 添加了一个可变的 func append 但我仍然遗漏了一些东西,因为我仍然得到了

Immutable value type [Store] only has mutating members named 'append'

错误

import Foundation

import UIKit

struct User {
var name: String
var stores: [Store]



mutating func append(newStore: Store) {
stores.append(newStore)
}
}

extension User: Printable {
var description: String {
var printedName = ("\(name as String, stores as [Store])")
return printedName
}
}

struct Store {
var name: String
var data: [[String: String]]



}

extension Store: Printable {
var description: String {
var printedStores = ("\(name as String, data as [[String : String]])")
return printedStores
}
}

@IBAction func done(segue: UIStoryboardSegue) {
let addStoreViewController = segue.sourceViewController as! AddStoreViewController
let store = addStoreViewController.store
if let selectedIndex = addStoreViewController.index {
stores[selectedIndex] = store!
} else {
if let selectedUser = user {
selectedUser.stores.append(store!)
}
}
storeTableView.reloadData()
}

import UIKit

class AddStoreViewController: UIViewController {


var store: Store?
var index: Int?

@IBOutlet weak var storeTextField: UITextField!

override func viewDidLoad() {
super.viewDidLoad()

if let name = store?.name {
storeTextField?.text = name
}

// Do any additional setup after loading the view.
}





// MARK: - Navigation


override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
let name = storeTextField?.text
if segue.identifier == "addAction" {
if var store = store {
self.store?.name = name!
} else {
store = Store(name: name!, data: [["": ""]])
println(store)
}
}
}



}

最佳答案

试试这个

if var selectedUser = user {
selectedUser.append(store!)
}

append函数属于struct user,不属于user.stores

关于ios - 不可变值类型 [string] 只有名为 append 的可变成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30949059/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com