Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 什么';任何类型的泛型都有什么意义?_Swift - Fatal编程技术网

Swift 什么';任何类型的泛型都有什么意义?

Swift 什么';任何类型的泛型都有什么意义?,swift,Swift,对不起,如果这是一个愚蠢的问题。我刚刚读了swift文档,我不明白泛型的意义 如果我有以下资料: func swapTwoInts<T>(inout a: T, inout b: T) { let tempa = a a = b b = tempa } var num1 = "uno" var num2 = "dos" swap(&num1, &num2) 有什么不同吗?哪些示例必须使用泛型而不是任何类型?泛型只是不必为不同的数据类型重写相同代码的简便方法。假设您

对不起,如果这是一个愚蠢的问题。我刚刚读了swift文档,我不明白泛型的意义

如果我有以下资料:

func swapTwoInts<T>(inout a: T, inout b: T) {
let tempa = a
a = b
b = tempa
}

var num1 = "uno"
var num2 = "dos"
swap(&num1, &num2)

有什么不同吗?哪些示例必须使用泛型而不是任何类型?

泛型只是不必为不同的数据类型重写相同代码的简便方法。假设您希望在程序中的不同时间使用两个swap-to字符串和两个int-要么编写两个执行完全相同操作的函数,要么使用一个泛型函数。

“泛型函数允许您在参数和函数结果上使用Swift的类型安全性来编写更安全、更干净的代码。”


有同样的问题(和答案)

哦,所以这是一个奇特的代码质量问题。非常感谢。
func swapTwoInts (inout a: Any, inout b: Any) {
let tempa = a
a = b
b = tempa
}


var num1 = "uno"
var num2 = "dos"
swap(&num1, &num2)