gpt4 book ai didi

ios - 在结构或其他方法中全局存储数组

转载 作者:可可西里 更新时间:2023-11-01 00:48:13 25 4
gpt4 key购买 nike

我有一个结构元素数组,我想将它们存储在全局范围内,这样我就可以在不同的类中访问它,而不必一遍又一遍地运行查询来填充它。

我有一个结构:

struct collectionStruct {
var name : String
var description : String
var title : String
var image : PFFile
var id: String
}

和一个变量:

var collectionArray = [collectionStruct]()

和一些构建数组的代码:

for object in items {

let arrayName = object.object(forKey: fromName) as! String
let arrayDescription = object.object(forKey: fromDescription) as! String
let arrayTitle = object.object(forKey: fromTitle) as! String
let arrayImage = object.object(forKey: fromImage) as! PFFile
let arrayID = object.objectId as String!

collectionArray.append(collectionStruct(name: arrayName,
description: arrayDescription,
title: arrayTitle,
image: arrayImage,
id: arrayID!))
}

我正在考虑创建另一个结构来保存数组本身,但我在这里有点迷路了。这就是我的想法:

struct globalArray {

var collectionArray = [collectionStruct]()

}

但可能还有一段路要走

最佳答案

您应该考虑将您的结构命名为 CollectionStruct 而不是 collectionStruct - 因为这表明它是一种类型。要在任何地方访问数组,您可以创建一个单例。对于单例,您可以通过给它一个私有(private)构造函数来确保只有一个实例可用。这是一个例子:

class Global {
private init() { }
static let sharedInstance = Global()
var collection = [CollectionStruct]()
}

要使用它,您将使用以下内容:

Global.sharedInstance.collection

关于ios - 在结构或其他方法中全局存储数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41565740/

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