gpt4 book ai didi

Swift 构造函数未出现在方法列表中, "Arguments passed to call that takes no arguments"

转载 作者:行者123 更新时间:2023-11-28 07:54:24 27 4
gpt4 key购买 nike

我是 Swift 的初学者。我尝试创建一个表示 Meal 的简单类。

它有一些属性和一个返回可选的构造函数

enter image description here

但是当我尝试测试它或在任何地方实例化它时,我得到的只是一个错误。似乎无法弄清楚发生了什么。

enter image description here

最佳答案

从上面的代码中,您必须显式声明您的类 public 以便能够在另一个文件中实例化它。当您未指定任何访问控制时,默认访问类型是 internal in swift。

我已经对您的代码进行了以下修改。

导入 UIKit

公共(public)类 MealModel {

let name: String
let photo: UIImage?
let rating: Int

public init?(name: String, photo: UIImage?, rating: Int) {

guard !name.isEmpty, (rating >= 0) && (rating <= 5) else { return nil }

self.name = name
self.photo = photo
self.rating = rating
}

我相信这会解决您的问题。

关于Swift 构造函数未出现在方法列表中, "Arguments passed to call that takes no arguments",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48698791/

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