在Swift中,要了解的关键字是什么"动态类类型"?

时间:2017-07-27 03:33:11

标签: ios swift xcode

我记得我在某个地方读过一些或多或少像这样的东西:

class Process <T> {
    var data: Array<T> = [];
    func addData (element: T) { data.append(T); }
}

这样,我可以像这样实例化对象:

let objInt = Process <Int>
objInt.addData (100);

let objString = Process <String>
objString.addData ("Hello");

我想知道这是什么&#34; T&#34;,它是如何工作的,如何实现它,以及如何创建一个部分基于这种动态类型的类&#34; T&#34; 。但我不知道在互联网上搜索的关键字是什么。我在Swift中搜索动态类型,但谷歌的所有回信都是关于识别和打印课程的。运行时动态类型。有人可以帮忙吗?感谢。

2 个答案:

答案 0 :(得分:2)

<强>泛型

来自Swift programming language book

&#34;通用代码使您能够根据您定义的要求编写可以使用任何类型的灵活,可重用的函数和类型。您可以编写避免重复的代码,并以清晰,抽象的方式表达其意图。&#34;

泛型版本使用占位符类型名称(称为T或任何其他名称)而不是实际的类型名称(例如Int,String或Double)。因此,在您的情况下,Process类可以保存由T参数指定的任何类型的数据。

答案 1 :(得分:0)

你的意思是泛型。这是link