相关疑难解决方法(0)

使用swift中泛型类派生的类的限制

我试图从泛型类派生我的类:

class foo<T> {}
class bar : foo<Int> {}
Run Code Online (Sandbox Code Playgroud)

但是此代码无法使用en错误进行编译:

从泛型类派生的类也必须是通用的

如何避免这种限制?可能吗?

generics class swift

34
推荐指数
4
解决办法
1万
查看次数

Swift - 泛型问题导致内存泄漏

我尝试在swift ios应用程序中实现CQRS模式,我发现了奇怪的行为.

核心课程:

class Query<T> {} 

class QueryHandler<TResult, TQuery:Query<TResult>> {

    func execute(query: TQuery, callback: (result: TResult) -> Void ) {
    }
}
Run Code Online (Sandbox Code Playgroud)

实施类:

class GetRandomStringsQuery: Query<[String]> {
internal var prefix:String

init(prefix: String) {
    self.prefix = prefix
    }
}

class GetRandomStringsQueryHandler: QueryHandler<[String], GetRandomStringsQuery> {

    override func execute(query: GetRandomStringsQuery, callback: (result: [String]) -> Void) {
        var result = [String]()

        for var i = 0; i < 100; i++ {
            result.append("[\(i)]: \(query.prefix)")
        }

        callback(result: result)
    }
}
Run Code Online (Sandbox Code Playgroud)

用法示例:

@IBAction func generateMemoryLeak(sender: AnyObject) { …
Run Code Online (Sandbox Code Playgroud)

swift

7
推荐指数
1
解决办法
476
查看次数

标签 统计

swift ×2

class ×1

generics ×1