Мне было интересно, есть ли конструкция на языке программирования Swift 3, которая позволяет мне хранить некоторые объекты в массиве, но инициализировать каждый элемент в этом массиве лениво.Array с ленивыми элементами
Представьте себе этот пример класса:
class A {
let test = "hello"
let test2 = 2.0
}
Теперь я хочу, чтобы хранить массив объектов «A» в массиве другого класса, например:
class B {
var lazy(?) array: [A] = {
// Some code to initialize the element being accessed
}()
}
Если я получить доступ к любому элементу Теперь, было бы здорово, если бы он инициализируется только тогда, когда я к нему доступ, так лениво
print(B.array[1].test) (element at index one is now initialized)
является ли это ПОСС кий?
Я не k теперь достаточно, чтобы ответить, но я верю, что вы ищете протокол «Генератор» или что-то вроде этого. Здесь вы идете ... http://nshipster.com/swift-collection-protocols/ – Fogmeister