gpt4 book ai didi

ios - Swift语言的StructName.init是什么意思?

转载 作者:行者123 更新时间:2023-11-28 19:25:16 25 4
gpt4 key购买 nike

我正在阅读 iOS、MVVM 示例项目,我不知道语法是什么

这段代码的ArticleViewModel.init是什么?

self.articlesVM = articles.compactMap(ArticleViewModel.init)

ArticleViewModel 需要一个参数来初始化。

StructName.init 是什么意思?我不会谷歌,如果你知道请帮忙。

struct ArticleListViewModel {
let articlesVM: [ArticleViewModel]
}

extension ArticleListViewModel {

init(_ articles: [Article]) {
self.articlesVM = articles.compactMap(ArticleViewModel.init)
}

}

struct ArticleViewModel {

let article: Article

init(_ article: Article) {
self.article = article
}

}

最佳答案

当您将 .init 作为闭包传递时,这只是将闭包参数传​​递给 init 的简写。

所以 articles.compactMap(ArticleViewModel.init)articles.compactMap { ArticleViewModel.init($0) } 的简写(你不会真正写出 .init,但使用简写符号 ArticleViewModel($0))。

关于ios - Swift语言的StructName.init是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59408076/

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