在Swift中使用泛型类型声明变量

时间:2015-04-03 10:23:59

标签: objective-c swift generics types

我有来自Obj-C的一行代码:

GPUImageOutput<GPUImageInput> *filter;

如何将其转换为Swift?我尝试了一些解决方案,但它不起作用:(

var filter = GPUImageOutput<GPUImageInput>
var filter:GPUImageOutput = GPUImageOutput<GPUImageInput>

1 个答案:

答案 0 :(得分:2)

这在Objective-C中不是通用的。 Obj-C不支持泛型。

该符号用于表示协议一致性。因此它被声明为实现GPUImageOutput协议的GPUImageInput

我相信它可以在Swift中翻译成这个:

var filter: GPUImageInput
// or
var filter: GPUImageOutput