首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
tang_women
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
0
文章 0
沸点 0
赞
0
返回
|
搜索文章
最新
热门
Swift 和 SwiftUI 中的函数构建器
函数构建器是在 Swift5.1 中新增的语言特性。它使得 Swift 支持 DSL,有了它,我们可以以一种简洁可读的方式构建各种各样的视图层级。 函数构建器是一种利用内置的 DSL 定义的类型,它会从函数中的表达式收集结果,然后把它们组合成返回值。 函数构建器类型必须用 @f…
《程序员的自我修养--链接、装载与库》总结
我们的重点在虚拟地址空间的分配上。 ... 是用来指示各个段的在目标文件中的位置、长度,在虚拟内存中的位置、长度,和段属性的。 段属性是有:ALLOC, LOAD,READONLY等,这些都是给操作系统看的,操作系统一看就能知道是否要加载这个段到内存中,是只读,还是可读可写等。…
Swift map/flatMap/compactMap 傻傻分不清楚
输入源/转换方式/输出结果,这三个中,转换方式是不能被函数控制的,所以 map/flatMap/compactMap 分别是对 输入源/输出结果 不同的处理方式 的描述。 集合对输入都没有做特殊处理,集合中的元素是什么,就传进去什么。 map 取对象时,把集合脱掉了一层 [ ]…
Block学习
可以看到 global 类型的 block 的初始化函数中,将 isa 设置成 StackBlock,但实际看汇编代码就可以知道,根本就不会走初始化函数,从数据段中取出来就直接用了。 stackblock 不持有被引用的对象。因为 stackblock 没有被拷贝,所以被引用对…
传说中的栈溢出
我这篇博客是对https://www.cnblogs.com/fanzhidongyzby/p/3250405.html的解释。 根据计算机的位数不同,有时候叫ebp/esp,有时候叫rbp/rsp。 但都是指栈底/栈顶。 在计算机里,栈和堆分别在空间地址的两头儿,中间放程序代…
内存对齐之实践出真知
基本上是对 内存对齐的原因、实现 都产生了怀疑。 内存对齐的原因,因为知识水平所限+大家对这个东西都不感兴趣,所以我没有找到解答我问题的书或者文章。 这篇文章只是讲内存对齐的实现的理解。 我原来陷在一个误区中,我以为需要有个地方存储对齐系数,其实根本不需要。 c语言对结构体某个…
内存对齐的疑惑
第一个数据成员A放在偏移为 0 的地方。 如果结构体的数据成员还为结构体,则该数据成员的“自身长度”为其内部最大元素的大小。(struct a 里存有 struct b,b 里有char,int,double等元素,那 b “自身长度”为 8) 在数据成员按照上述第一步完成各自…
操作系统-存储管理/设备管理的演化
动态方式:通过基址寄存器、长度寄存器和动态地址转换机制生成地址。在某个固定的寄存器中保存着基地址,在用户程序使用到某地址时,基地址加上偏移就是实际地址。 无论采用什么策略,连续空间分配都会造成空间的极大浪费和空间碎片化,显得非常老旧,但是这是那个时代不错的方式,因为虽然不连续的…
project创建多target--多个相似app解决办法之一demo
1. 需求 移除watchapp,watch extension。 2. 新建一个target 假设原target名为origin。后三步建议进行。 修改scheme名称:点击Xcode左上角manage schemes,找到对应的scheme,选中名称回车修改。 3. 移除w…
iOS app 国际化
1. 创建一个新应用 在Xcode的Single Application View模版中,Xcode对English做了本地化。 2. 开始国际化 选中project,在上图的Localizations选项下,添加简体中文;Xcode会询问你是否国际化以下文件,这个地方并不重要…
下一页
个人成就
文章被点赞
13
文章被阅读
30,382
掘力值
629
关注了
44
关注者
8
收藏集
1
关注标签
6
加入于
2020-03-26