Swift 中的函数调用问题
Issue with a function call in Swift
我在调用 Swift 中的函数时遇到一些问题。
乍一看,这似乎是普通的代码(意思是类似于我过去做过的事情,没有问题)。但是看到编译器消息,我一定错过了一些微妙之处。
首先是我得到的错误:
'NSManagedObject' is not convertible to 'MyViewController'
然后是相关代码:
1) Class 包含调用的函数:
import UIKit
class MyViewController: UIViewController {
....
func myVCFunction(_ theData: NSManagedObject) {
.... // Do some useful work.
}
}
2) 包含另一个函数的文件,调用第一个函数(在 1 中提到)。
import Foundation
import UIKit
..... Some useful functions.
func otherCustomFunc(_ dataUnit: NSManagedObject) {
.... // Do some useful work.
MyViewController.myVCFunction(dataUnit) // Line getting the error message.
}
我不明白错误信息。
为什么 'NSManagedObject' 在这里可以转换为 'MyViewController'?
如果有人能指出我遗漏了什么,我会很高兴。
Create an instance of MyViewController like below:
import Foundation
import UIKit
func otherCustomFunc(_ dataUnit: NSManagedObject) {
let myViewController = MyViewController()
myViewController.myVCFunction(dataUnit)
}
我在调用 Swift 中的函数时遇到一些问题。 乍一看,这似乎是普通的代码(意思是类似于我过去做过的事情,没有问题)。但是看到编译器消息,我一定错过了一些微妙之处。
首先是我得到的错误:
'NSManagedObject' is not convertible to 'MyViewController'
然后是相关代码:
1) Class 包含调用的函数:
import UIKit
class MyViewController: UIViewController {
....
func myVCFunction(_ theData: NSManagedObject) {
.... // Do some useful work.
}
}
2) 包含另一个函数的文件,调用第一个函数(在 1 中提到)。
import Foundation
import UIKit
..... Some useful functions.
func otherCustomFunc(_ dataUnit: NSManagedObject) {
.... // Do some useful work.
MyViewController.myVCFunction(dataUnit) // Line getting the error message.
}
我不明白错误信息。 为什么 'NSManagedObject' 在这里可以转换为 'MyViewController'?
如果有人能指出我遗漏了什么,我会很高兴。
Create an instance of MyViewController like below:
import Foundation
import UIKit
func otherCustomFunc(_ dataUnit: NSManagedObject) {
let myViewController = MyViewController()
myViewController.myVCFunction(dataUnit)
}