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的运算符体系是相当科学的,想故意不一样难免弄巧成拙。


(这是文档结束)

相关推荐
传奇开心果编程12 小时前
【Compose Multiplatform 跨端开发学与练】第7课 平台适配与互操作
android·windows·学习·ui·ios·kotlin·composer
打工仔折腾 AI15 小时前
从零写一个CAD 05:以鼠标为中心的滚轮缩放,招法能复用但顺序不能反
开发语言·后端·python·性能优化·计算机外设·swift·ai agent 实战
传奇开心果编程17 小时前
【Compose Multiplatform 跨端开发学与练】第5课 网络与数据层
android·网络·学习·ui·ios·kotlin·composer
茶底世界之下18 小时前
视频预览切换为何会闪回旧帧:用 generation + mode identity 管住异步回调
ios·swift
老李IT笔记20 小时前
从备份恢复会把管理状态带回来吗:iOS 27 之后答案变了|MDM.Plus
ios·智能手机
谢亮_vipxieliang20 小时前
Go 接口设计原则核心知识点
开发语言·ios·golang
Hello_Pyhx1 天前
iPhoneMirror:把 iPhone 接入 Windows,先分清投屏与反控
windows·ios·iphone
茶底世界之下1 天前
类型擦除之后,Metal 滤镜组合为什么不能只执行一个 Filter?
ios·swift
传奇开心果编程1 天前
【SwiftUI提高练中学】第8课 网络层架构:拦截器、重试、缓存与离线优先
学习·macos·ui·ios·swiftui
传奇开心果编程2 天前
【Compose Multiplatform 跨端开发学与练】第3课 布局与组件
android·windows·学习·ui·ios·kotlin·composer