iOS开发 Swift 速记5:高级运算符

初级代码游戏的专栏介绍与文章目录-CSDN博客

我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。

这些代码大部分以Linux为目标但部分代码是纯C++的,可以在任何平台上使用。

源码指引:github源码指引_初级代码游戏的博客-CSDN博客

C#是我多年以来的业余爱好,新搞的东西能用C#的就用C#了。


系列入口:iOS开发 Swift 速记1:变量和基本数据类型-CSDN博客

发觉swift挺古怪的,思路感觉不一样。

目录

一、高级运算符

二、重载和自定义运算符

三、运算符优先级


一、高级运算符

位运算符 支持C的全套

溢出触发异常

溢出算符 & 表明此算符允许溢出 &+ &- 等等

运算符重载形式与函数相同(实际上运算符就是函数,可以当作函数名使用)

二、重载和自定义运算符

自定义首先要声明为运算符 prefix/infix/postfix operator 算符:优先级组

然后自定义和重载

保留符号不可以重载和自定义 = -> // /* */ . < > & ? !

优先级组precedencegroup 可以使用预定义组或重新定义

三、运算符优先级

单目优先

算数类 加减乘除位运算 乘除取模位移优先

区间类 ..< ...

类型类 is as as? as!

空合并 ??

比较类 大于小于等于 === !== ~=

逻辑与 &&

逻辑或 ||

条件 ?:

赋值类 =和组合=

注意\[\]不是运算符。实话说C的运算符体系是相当科学的,想故意不一样难免弄巧成拙。


(这是文档结束)

相关推荐
HouWan10 小时前
Swift 6.4 发布:iOS开发者值得关注的新特性
ios·swift·apple
用户380341658829711 小时前
macOS 录屏:ScreenCaptureKit 与 iOS 的分野,共用引擎的抽象层该切在哪
ios·音视频开发
HouWan13 小时前
Flutter iOS UISceneDelegate 迁移指南:理清新的 Scene 生命周期
flutter·ios·app
00后程序员张13 小时前
Xcode vs KXApp,体积差几十G,选轻量方案还是完整工具链?
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
2501_9159090617 小时前
怎么用 FlutterFlow 把应用发布到 App Store?
android·ios·小程序·https·uni-app·iphone·webview
2501_916008891 天前
全平台抓包工具,Windows、iPhone、Linux三个平台抓包测试
网络协议·计算机网络·网络安全·ios·adb·https·udp
2501_915918412 天前
怎么把 Python 写的 Flet 应用打包成 iOS App 并上架 App Store?
android·ios·小程序·https·uni-app·iphone·webview
李游Leo2 天前
HarmonyOS 7 实战开发 04:适配手机、折叠屏与大屏布局
ios·harmonyos
终端安全笔记2 天前
iOS 27 强制 TLS 1.2:租赁设备的注册链路会在哪一环断
android·网络·安全·ios·智能手机