gpt4 book ai didi

swift - 有没有办法交换不同类型的对象?

转载 作者:可可西里 更新时间:2023-10-31 23:55:38 27 4
gpt4 key购买 nike

我想知道是否有一种方法可以在 Swift 中交换两个不同类型的对象。

这是我的试用版:

func swapXY<T>(inout first: T,intout second: T)
{
(first ,second ) = ( second, first)
}

假设我希望两个参数分别为 T,Y。如何实现?

最佳答案

是的,您可以交换两个项目,并且该函数已包含在标准库中。

swap(_:_:)

Exchange the values of a and b.
Declaration

func swap<T>(inout _ a: T, inout _ b: T)

Swift Standard Library Functions Reference

但是,如果它们不是同一类型,则不能,您不能交换两个不同类型的项目。

swift 3

func swap<swapType>( _ a: inout swapType, _ b: inout swapType) {
(a, b) = (b, a)
}

关于swift - 有没有办法交换不同类型的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33641541/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com