加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift小计

发布时间:2020-12-14 02:13:43 所属栏目:百科 来源:网络整理
导读:REPL (Read-Eval-Print Loop “读取-求值-输出”循环,简称REPL ) 设置环境: 打开终端 sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer 运行 xcrun swift 覆盖父类中的方法,需要使用 override 关键字 @objc用来表示协议是可选的 ?

REPL (Read-Eval-Print Loop“读取-求值-输出”循环,简称REPL)

设置环境:

打开终端 sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

运行 xcrun swift

覆盖父类中的方法,需要使用 override 关键字

@objc用来表示协议是可选的

? 表示改类型是可选的

! 表示强制解析

_ 表示通配符,代表任何值

"~="表示操作符在一定范围内匹配

is关键字 进行父类与子类之间的匹配和判断

as关键字检查对象类型是不是某个类的子类,并且想使用父类的属性或方法时,使用as关键字将判断的对象类型转换为父类型

通过“&”字符进行错误保护:运算符前添加“&”符号可以避免出错。例如,使用“&/”运算符代替“/”避免除以0的错误。

-Overflow/ underflow检测:检测你的运算符是否会溢出或者下溢,可以利用“&”运算符处理

funchello(fromNamename:String){

println( "(name)sayshellotoyou!" )
}
fromName 为外部参数,如果要使外部参数和内部参数名称一样,只需要在name前面加 #
出于一些原因希望在函数中跳过外部参数名 ,为外部函数添加 _ 来解决
输入输出参数 inout, 操纵外部变量
var name1= "Mr.Potato"
name2= "Mr.Roboto"
funcnameSwap(inoutname1:String,inoutname2:String){
letoldName1=name1
name1=name2
name2=oldName1
}
nameSwap(&name1,&name2)

如果想要有一个具有可选方法的协议,必须给协议加上一个@objc标签作为前缀(即使类不能兼容objective-C)。然后,给所有可选方法加上@optional标签作为前缀。
  1. @objcprotocolSpeaker{
  2. funcSpeak()
  3. @optionalfuncTellJoke()
  4. }

柯里化函数
柯里化(Currying),又称部分求值(Partial Evaluation),是一种函数式编程思想,就是把接受多个参数的函数转换成接收一个单一参数(最初函数的第一个参数)的函数,并且返回一个接受余下参数的新函数技术。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读