我正在尝试检查对象是否属于给定类型,但出现错误:



ios - 检查对象类型失败并出现  "is not a type"错误-LMLPHP

我的代码如下。

func testInputValue(inputValue: AnyObject, isKindOfClass expectedClass: AnyClass) throws {
    guard let object = inputValue as? expectedClass else {
        // Throw an error
        let userInfo = [NSLocalizedDescriptionKey: "Expected an inputValue of type \(expectedClass), but got a \(inputValue.dynamicType)"]
        throw NSError(domain: RKValueTransformersErrorDomain, code: Int(RKValueTransformationError.UntransformableInputValue.rawValue), userInfo: userInfo)
    }
}

我想弄清楚这里有什么问题。

最佳答案

你应该能够用泛型做到这一点:

func testInputValue<T>(inputValue: AnyObject, isKindOfClass expectedClass: T.Type) throws {
    guard let object = inputValue as? T else {
        ...
    }
}

关于ios - 检查对象类型失败并出现 "is not a type"错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36850196/

10-11 04:35