工作在swift 4
. 我有这样的功能
func setFields<T>(_ fromView : UIView, toObject : inout T!) -> T!
setFields(self.view, toObject: &self.productExtended.product)
//inside ProductExtended
public var product: Product
当我这样称呼它时,我得到了错误:
“Inout 参数可以设置为类型不是“产品”的值;使用声明为类型“_?”的值 反而”
此外,如果我尝试为 ProductExtended.Product 中的字段调用它,我会得到模棱两可的上下文有没有办法向编译器保证我不会更改该参数的值类型并且我不会在函数内将其设为 nil ?