HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – XCode6 Beta中的编译器警告 – “速记外部参数名称”大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在 Xcode6 Beta上玩 Swift,当我在func定义’#’中使用时,就像在Apple的Swift编程指南中一样,我得到以下编译器错误: @H_489_5@ @H_489_5@参数中的无关’#’:’characterToFind’已经是关键字参数名称

@H_489_5@
// this code is a copy-paste code from apple's Swift Language programing guide

func containsCharacter(#String: String,#characterToFind: Character) -> Bool {
    for character in String {
        if character == characterToFind {
            return true
        }
    }
    return false
}
@H_489_5@它只是新Xcode的一个错误吗?

解决方法

如果它是一个方法(类中的一个函数),那么#是多余的,我想这就是编译器的意思. @H_489_5@ @H_489_5@在方法中,假设第一个参数名称只是本地名称,而其他名称自动被假定为外部名称和本地名称,就好像您已经在它们前面写了#一样.

@H_489_5@所以,而不是

@H_489_5@
func containsCharacter(#String: String,#characterToFind: Character) -> Bool
@H_489_5@你可以写

@H_489_5@
func containsCharacter(#String: String,characterToFind: Character) -> Bool
@H_489_5@这将是完全相同的事情.

@H_489_5@为了进一步证明这一点,我在操场上尝试了这个

@H_489_5@
func foo(#x: Int,#y: int) { }
class foobar {
    func foo(#x: Int,#y: int)
    func bar(#x: Int,y: int)
}
@H_489_5@这三个函数是相同的,但编译器会在第二个foo上发出警告

@H_489_5@ @H_489_5@同样,第一个in方法之后的参数已经自动被视为外部名称.

大佬总结

以上是大佬教程为你收集整理的ios – XCode6 Beta中的编译器警告 – “速记外部参数名称”全部内容,希望文章能够帮你解决ios – XCode6 Beta中的编译器警告 – “速记外部参数名称”所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。