swift -函数、函数指针
//
// main.swift
// FunctionTest-04
// import Foundation println("函数測试!") testFunction()
//
// FunctionTest.swift
// FunctionTest-04
// import Foundation
//函数以func开头 表示是一个函数
//參数和參数以,
//v1 表示參数:String 表示參数的类型
// -> 表示返回值 String
func testConcat(v1:String, v2:String)->String{
return "\(v1) and \(v2)";
} //參数是0个。返回值是三个
func getInfo()->(String,String,String){
return ("欢迎","来到","百度");//是一个元祖
} //标签是oc的长处swift把oc里面的标签拿过来了
func testConcat2(v1 :String, andValue v2 :String,andNumber v3 :Int)->String{
return"\(v1) and \(v2) and \(v3)";
} func testFunctionInFunction()->Int
{
var y = 10;
//add是一个函数 lua脚本语言
func add(){
//var y = 1;以下这个y会选择zui
y += 5;
}
add();
return y;
}
//这是一个函数 返回值是(Int->Int)
func getFuncPointer()->(Int->Int){
func addOne(num : Int)->Int
{
return num+1;
}
//这里返回一个函数的地址
return addOne;
} func testFunction()
{
println("開始測试函数"); let v = testConcat("hello","world");
println(" v is \(v)"); //andValue:称为一个标签
let v2 = testConcat2("百度",andValue:"百度招聘",andNumber:100);
println("v2 is \(v2)"); let(v3,v4,v5) = getInfo();
println("v3\(v3) v4\(v4) v5\(v5)"); let v6 = testFunctionInFunction(); println("v6 is\(v6)"); //函数指针
var funcPointer = getFuncPointer();
var v7 = funcPointer(199);
println("v7 is \(v7)"); //把函数地址/指针作为參数
var arr = [20,10,333,4,43,33];
var v8 = hasAnyMatch(arr,lessThanTen);
} func hasAnyMatch(list : [Int],condition:Int -> Bool) -> Bool
{
for item in list{
if(condition(item))
{
return true;
}
}
return false; } func lessThanTen(number :Int)->Bool{
return number <= 10;
}
swift -函数、函数指针的更多相关文章
- Swift 学习一函数&函数属性&懒加载
函数 函数相当于OC中的方法 格式: func 函数名(参数列表) -> 返回值类型 { 代码块 return 返回值} func 函数名(参数列表){ // 返回值为Void 可 ...
- Swift 中函数使用指南
关于Swift中的各种函数的使用的总结 前言 时间久了,好多东西我们就会慢慢忘记,在这里总结一下Swift中函数的使用原则,把大部分的函数使用技巧用代码示例来做了演示,但是如果想提高,还是要多多思考才 ...
- C语言中 指向函数的指针 简介
引子:在学习CPrimerPlus的第十四章的14.13节中,遇到了如下三行文字,是有关指向函数的指针的,把我搞晕了. char * fump(); //返回指向char的指针的函数 char (* ...
- C语言 第八章 函数、指针与宏
一.函数 函数是一个包含完成一定功能的执行代码段.我们可以把函数看成一个"黑盒子", 你只要将数据送进去就能得到结果, 而函数内部究竟是如何工作的的, 外部程序是不知道的.外部程序 ...
- 12-返回指针的函数&&指向函数的指针
前言 接下来我只讲指针的最常见用法,比如这一章的内容----返回指针的函数 与 指向函数的指针 一.返回指针的函数 指针也是C语言中的一种数据类型,因此一个函数的返回值肯定可以是指针类型的. 返回 ...
- 《征服 C 指针》摘录4:函数 与 指针
一.指向函数的指针 函数名可以在表达式中被解读成“指向函数的指针”,因此,正如代码清单 2-2 的实验那样,写成 func 就可以取得指向函数的指针. “指向函数的指针”本质上也是指针(地址),所以可 ...
- 【C语言】14-返回指针的函数与指向函数的指针
前言 前面我们花了接近3个章节学习指针,应该都感受到指针的强大了吧.指针可以根据地址直接操作内存中的数据,使用得当的话,不仅能使代码量变少,还能优化内存管理.提升程序性能.关于指针的内容还非常多,比如 ...
- 指向函数的指针与iOS-Block相关知识
指向函数的指针与iOS-Block相关知识 一. 函数指针的定义和调用: 关于函数指针的知识详细可参考:http://www.cnblogs.com/mjios/archive/2013/03/19/ ...
- Swift:函数和闭包
函数 函数是一个完成独立任务的代码块,Swift中的函数不仅可以像C语言中的函数一样有函数的参数和返回值,而且还支持嵌套,并且有函数参数默认值.可变参数等. //定义一个函数,注意参数和返回值,如果没 ...
- C++ 必知必会:条款16 指向成员函数的指针并非指针
这一点与指向成员的指针类似,其实现可能更加复杂,因为成员函数同时还存在虚拟函数,需要动态绑定执行动作.当然这种属性是属于函数本身的,此处表达的是指针不涉及函数的属性问题. 1: class shape ...
随机推荐
- BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第10章节--SP2013中OAuth概览 SP2013中的OAuth
BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第10章节--SP2013中OAuth概览 SP2013中的OAuth SP apps使用OAuth授权 ...
- code::blocks配置编译cuda并进行第一个demo的測试
我们先新建个NVCC的编译器. 使用复制GCC编译器的方式进行新建,然后我们进行下面的路径配置 先来看看链接库,将我们常常使用的cuda库链接进来. 然后链接cuda的头文件: 接着配置调试工具以及编 ...
- Cocos Code IDE
https://www.cnblogs.com/luorende/p/6464181.html http://www.cocoachina.com/bbs/read.php?tid-464164.ht ...
- 制作ubuntu的U盘启动盘
在制作U盘启动盘之前,请各位先格式化你的U盘. 制作U盘启动盘的工具有很多种,我们这里为大家介绍的是用软碟通制作.所有我们需要有这个软件,如果大家没有可以百度“软碟通”,下载安装一个.然后点击打开.在 ...
- P3376 【模板】网络最大流(70)
题目描述 如题,给出一个网络图,以及其源点和汇点,求出其网络最大流. 输入输出格式 输入格式: 第一行包含四个正整数N.M.S.T,分别表示点的个数.有向边的个数.源点序号.汇点序号. 接下来M行每行 ...
- Python3之时间模块详述
Python3之时间模块 time & datetime & calendar 一. 概述 python 提供很多方式处理日期与时间,转换日期格式是一个常见的功能. 时间元组:很多p ...
- Service(服务)简单使用
1.Service(服务)是一个一种可以在后台执行长时间运行操作而没有用户界面的应用组件.服务可由其他应用组件启动(如Activity),服务一旦被启动将在后台一直运行,即使启动服务的组件(Activ ...
- elasticsearch集群添加节点
最简配置文件: cluster.name: your_cluster_name node.name: your_ip network.host: 0.0.0.0 http.port: your_p ...
- php基础-----常量const和define的区别
1.常量是一个简单的标识符,在脚本运行期间,值不可改变,默认大小写敏感. 答:使用const使得代码简单易读,const本身就是一个语言结构,而define是一个函数.另外const在编译时要比def ...
- thinkphp 5 count()方法在控制器,模板中的使用方法
thinkphp中关于count()方法的使用: 控制器中:echo count($arr)模板中:{$arr | count}模板中if判断语句中 <if condition="co ...