为多个swift参数设置相同的值

前端之家收集整理的这篇文章主要介绍了为多个swift参数设置相同的值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个与此类似的功能
func stamp(documentURL: NSURL,saveURL: NSURL) {
        ...}

我希望能够允许某人根据需要设置这两个参数.但如果他们只设置第一个参数,我想要saveURL = documentURL.在函数声明中有没有办法做到这一点?

函数声明本身中没有办法做到这一点,但是你可以通过使用默认值为nil的可选参数和 nil coalescing operator函数体的单行中完成.
func stamp(documentURL: NSURL,saveURL: NSURL? = nil) {
    let saveURL = saveURL ?? documentURL

    // ...
}

这样做的好处是saveURL在函数体中是非可选的,从而使您不必在以后使用强制解包操作符.

猜你在找的Swift相关文章