Swift开发经验——外部参数名

一、什么是外部参数名?

浅显地说,外部参数名就是在调用一个方法时要在方法的参数前面加上一个特定的名字,目的是便于阅读代码,提高维护效率。

 

二、在最新的Xcode中,外部参数名的性质与用法如下

性质:

函数可同时有局部名称(内部使用)和外部名称(调用函数时使用),方法的参数也类似,不过方法和函数的局部名称和外部名称的默认行为是不一样的

Swift中默认给第一个参数名称一个局部参数名称,第二和后续的参数局部参数名称和外部参数名称默认相同

用法示例:

在其他语言中如果我们这样定义一个方法:

 

我们一般这样调用:

 

而Swift中这种写法是有错误的,

如上的定义方法,系统报错如下:

应该这样调用:

所谓argument labels 即 外部参数名。

 

我在第一次接触到这个东西时不知所措,因为我并没有显示的制定外部参数名,但是系统给添加了默认的与形参相同的外部参数名。但是奇怪的是第一个参数x却没有默认制定外部参数名。

 

原因是:

Swift中默认给第一个参数名称一个局部参数名称,第二和后续的参数局部参数名称和外部参数名称默认相同。

修改方法的外部参数名称

有时为方法的第一个参数提供外部参数名也是有用的,可以显示在参数前添加#号
如果不想为方法的第二个及后续参数提供外部参数名称,在前面使用下划线 (_) 作为该参数的显式外部名称。

 

1、比如,你想要这样调用方法:

应该这样定义方法:

 

2、又比如,你想要这样调用方法:

应该这样定义方法:

 

3、或者显示制定其他的外部参数名

这样定义:

这样调用:

 

参考页面:

http://blog.csdn.net/huangchentao/article/details/32715179

时间: 2024-10-12 04:52:51

Swift开发经验——外部参数名的相关文章

Swift 1.1语言函数参数的特殊情况本地参数名外部参数名

Swift 1.1语言函数参数的特殊情况本地参数名外部参数名 7.4  函数参数的特殊情况 声明定义有参函数时,为函数的每一个参数都定义了参数名称.根据参数名定义的形式不同,函数参数包括本地参数和外部参数名两种本文选自swift入门很简单. 7.4.1  本地参数名 本地参数名就是定义函数名时,在参数列表中所写的参数名,它只可以在函数主体内使用.如以下的一个代码片段,它定义了一个函数名为fun的函数,在此函数的参数列表中定义的就是本地参数名文选自swift入门很简单. func fun(star

swift函数_外部参数名

//1________________ /** *没使用外部参数名的函数 */ func inputScore(name:String,score1:Int,score2:Int) { } /** * 包含外部参数名的函数 */ func inputScore(studentName name:String,mathScore score1:Int,englishScore score2:Int) { } //使用外部参数名的函数 inputScore(studentName:"peter&qu

Swift - 28 - 内部参数名和外部参数名

//: Playground - noun: a place where people can play import UIKit // 外部参数的作用是为了让程序员调用代码的时候能清晰的看出所传参数代表的意思 // 内部参数指的就是定义函数的时候所设定需要传入的参数 func sayHello(nickName nickName:String, greeting:String) -> String { let result = greeting + "," + nickName

Swift 函数调用到底写不写参数名

最近真正开始学 Swift,在调用函数的时候遇到一个问题:到底写不写函数名? 我们来看两个个例子: // 1 func test(a: Int, b: Int) ->Int { return a + b } test(a: 1, b: 1) // (A) test(1, b:1) // (B) //2 class Test { var name: String var age: Int init(name: String, age: Int) { self.name = name self.ag

Swift中的参数内部名称和外部名称

1.什么是参数的内部名称和外部名称? struct Color { let red, green, blue: Double init(red redColor: Double,green greenColor: Double,blue blueColor: Double) { red = redColor green = greenColor blue = blueColor } } 1.1  Color这个结构体的构造方法中提供了三个参数,其中red是第一个参数的外部名称,redColor是

?Swift语言中为外部参数设置默认值,可变参数,常量参数,变量参数,输入输出参数

引用自这里:Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数 目录[-] 7.4.4  为外部参数设置默认值 7.4.5  可变参数 7.4.6  常量参数和变量参数 7.4.7  输入-输出参数 7.4.4  为外部参数设置默认值 开发者也可以对外部参数设置默认值.这时,调用的时候,也可以省略参数传递本文选自Swift1.2语言快速入门v2.0. [示例7-11]以下的代码就为外部参数toString.withJoiner设置了默认的参数"Swift"和&qu

?Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数

Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数 7.4.4  为外部参数设置默认值 开发者也可以对外部参数设置默认值.这时,调用的时候,也可以省略参数传递本文选自Swift1.2语言快速入门v2.0. [示例7-11]以下的代码就为外部参数toString.withJoiner设置了默认的参数"Swift"和"---".代码如下: import Foundation func join(string s1: String, toString

Swift Internal Parameter and External Parameter 外部参数和内部参数

今天跟大神又学习了些关于IOS开发Swift语言的外部参数和内部参数 func doSomething(num1: Int, num2: Int) -> Int { return num1 + num2 } doSomething(1, 2) class A { func foo(#num1: Int, num2: Int) { } func objectAtIndex(num: Int forArray array: Int) { } } var a = A() a.foo(num1: 1,

值不能为null.参数名: viewInfo,如何解决

有蓝队网络服务器租用客户反映在一台服务器上使用数据库管理工具时弹出了如下错误 :值不能为null.参数名: viewInfo (Microsoft.SqlServer.Management.SqlStudio.Explorer 错误信息如上图: 解决方法:点击确定 登陆上去.查看---已注册的服务弹出报错信息,点详细. 会找到一个类似无法读取C:\Users\www.landui.com\AppData\Local\Temp\3\xx.tmp 的报错信息. 打开对应目录C:\Users\www.