原文出自:www.hangge.com  转载请保留原文链接:http://www.hangge.com/blog/cache/detail_517.html

1,无返回值的函数

func test(name:String){

}

2,返回一个返回值

func test(name:String) -> Bool{
return true
}

3,返回由多个值组成的复合返回值

func test(name:String) -> (Int,Bool){
var position =
var visible = false
return (position,visible)
}

4,可变形参:可以接受0个或者任意数量的输入参数

func test(numbers:Int...) -> Int{
var count:Int =
for number in numbers{
count += number
}
return count
}

6,如果想要同时改变函数内外的参数值,可以利用inout关键字,同时调用函数的时候给参数加上前缀“&”

var age =
add(&age)
print(age) // func add(inout age:Int){
age +=
}

7,可以使用函数类型的参数

func additive(a:Int, b:Int) -> Int{
return a + b
} //函数类型的参数
func printAdditiveResult(addFun: (Int, Int) -> Int, a:Int, b:Int){
print("Result:\(addFun(a,b))")
} printAdditiveResult(additive, a: ,b: )

8,也可以使用函数类型的返回值

//定义个自增函数
func increase(input:Int) -> Int{
return input +
} //定义个自减函数
func reduce(input:Int) -> Int{
return input -
} //定义一个返回函数类型的函数
func chooseFunction(backwards:Bool) -> (Int) -> Int{
return backwards ? reduce : increase
} //测试
let aFun = chooseFunction(>)
print(aFun()) //

注:笔记仅作学习记录只用!

swift学习笔记之—自定义函数的规则说明的更多相关文章

  1. php学习笔记:自定义函数的调用

    PHP内置了超过1000个函数,因此函数使得PHP成为一门非常强大的语言.大多数时候我们使用系统的内置函数就可以满足需求,但是自定义函数通过将一组代码封装起来,使代码进行复用,程序结构与逻辑更加清晰. ...

  2. python学习笔记之自定义函数的导入

    python可以将自己编写的类放在py文件中,然后由其他程序调用,今天分享下:如何在shell中从文件引用自定义类和函数,下面是具体的过程: 第一步将你编写的文件声明编码类型 然后将你编写的文件保存为 ...

  3. 《Shell脚本学习指南》学习笔记之自定义函数

    Shell的函数在使用之前必须先定义,定义格式: [ function ] funname [()] { action; [return int;] } 可以带function fun()定义,也可以 ...

  4. linux shell学习笔记二---自定义函数(定义、返回值、变量作用域)介绍

    linux shell 可以用户定义函数,然后在shell脚本中可以随便调用.下面说说它的定义方法,以及调用需要注意那些事项. 一.定义shell函数(define function) 语法: [ f ...

  5. ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET MVC 学习笔记-6.异步控制器 ASP.NET MVC 学习笔记-5.Controller与View的数据传递 ASP.NET MVC 学习笔记-4.ASP.NET MVC中Ajax的应用 ASP.NET MVC 学习笔记-3.面向对象设计原则

    ASP.NET MVC 学习笔记-7.自定义配置信息   ASP.NET程序中的web.config文件中,在appSettings这个配置节中能够保存一些配置,比如, 1 <appSettin ...

  6. [转载]SharePoint 2013搜索学习笔记之自定义结果源

    搜索中心新建好之后在搜索结果页上会默认有所有内容,人员,对话,视频这四个结果分类,每个分类会返回指定范围的搜索结果,这里我再添加了部门日志结果分类,搜索这个分类只会返回部门日志内容类型的搜索结果,要实 ...

  7. IOS学习笔记06---C语言函数

    IOS学习笔记06---C语言函数 --------------------------------------------  qq交流群:创梦技术交流群:251572072              ...

  8. 【swift学习笔记】二.页面转跳数据回传

    上一篇我们介绍了页面转跳:[swift学习笔记]一.页面转跳的条件判断和传值 这一篇说一下如何把数据回传回父页面,如下图所示,这个例子很简单,只是把传过去的数据加上了"回传"两个字 ...

  9. shell学习总结之自定义函数

    shell学习总结之自定义函数 Myfun (){ echo -n "now i is $i " ! [ "$i" ] && exit ; ec ...

随机推荐

  1. LeetCode: Regular Expression Matching 解题报告

    Roman to IntegerGiven a roman numeral, convert it to an integer. Input is guaranteed to be within th ...

  2. java 多线程4: java线程的优先级

    Java线程的优先级取值范围是1 (Thread.MIN_PRIORITY ) 到 10 (Thread.MAX_PRIORITY ).如果没有设置, 线程默认的优先级是NORM_PRIORITY.这 ...

  3. Python实现二叉树及其4种遍历

    Python & BinaryTree 1. BinaryTree (二叉树) 二叉树是有限个元素的集合,该集合或者为空.或者有一个称为根节点(root)的元素及两个互不相交的.分别被称为左子 ...

  4. CSS3和js炫酷点击按钮3D翻转动画特效

    简要教程 flipside是一款使用CSS3和js制作的炫酷点击按钮无缝过渡到确认面板的过渡动画特效.该点击按钮特效在按钮不同方向的边部点击时,产生的过渡动画特效是不一样的. 在线预览   源码下载 ...

  5. 7款基于jquery的动画搜索框

    无论是电商网站,还是媒体网,还是个人博客,每个网站都有属于自己个性化的搜索框.今天小编给大家带来7款基于jquery的动画搜索框.每个搜索框都采用了动画效果,一起看下效果图吧. 在线预览   源码下载 ...

  6. egret请求参数

    egret的文档还不错,不过http请求参数的文档居然没有,于是自己摸索了一下, 发现原来是直接传字符串参数就可以了.于是封装了一个类,方便使用. class RequestParam { publi ...

  7. mysql自增id获取失败

    php 数据库pdo对象,如果是返回,如以下伪代码 function getData(){ return $data; } $data = getData(); $id = $data->las ...

  8. 实战c++中的vector系列--构造、operator=和assign差别

    vector或许是实际过程中使用最多的stl容器.看似简单,事实上有非常多技巧和陷阱. 着重看一看vector的构造,临时依照C++11: default (1) explicit vector (c ...

  9. 在shell 中字符串,文件,数字的比较

    hadoop fs -test -e /path/exist ] ;then echo 'exist' else echo 'Error! path is not exist' fi 在shell中如 ...

  10. 【WPF】ListBox无法滚动

    问题:ListBox显示多个条目时,无法滚动,也不显示滚动条. 办法: 给ListBox控件加上ScrollViewer.VerticalScrollBarVisibility和ScrollViewe ...