自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to raw.githubusercontent.com:443

问题:MacOS系统使用 Homebrew 官方地址时,报错:Mac:/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to raw.githubusercontent.com:443 解决办法:切换国内源/bin/zs.

2021-07-15 16:30:59 314

原创 为什么用补码编码有符号数的时候,正数补码比负数补码的表示范围少一个?

以八位字长举例:正数补码的表示范围:0000 0001~0111 1111(1~127)负数补码的表示范围:1000 0001~1111 1111(-127~-1)从上面的表示范围来看,正负数的表示范围是一样的。但是除此之外,以0和1开头的八位补码还有两个:0000 0000 和 1000 0000。可由于0000 0000用来表示了0,1000 0000用来表示-128,所以实际上是正数的表示范围会比负数少一个。...

2021-06-23 16:33:44 957

原创 新能源车分类

市面上,各个汽车厂商的新能源车层出不穷,新能源种类五花八门。那么,怎么区分这些新能源车呢?目前,市面上的新能源车主要分为:纯电动汽车(ev)、油电混合动力汽车(hev)、插电式混合动力汽车(phev)、增程式电动汽车(erev)和燃料电池电动汽车(fcev(当新能源汽车站稳脚跟的时候,到底谁能笑到最后?...

2021-06-03 16:16:41 244

原创 iOS开发 NSTimer定时器

目录创建NSTimer销毁NSTimerinvalidate与fireNSTimer与runloopNSTimer与performSelector创建NSTimer销毁NSTimerinvalidate与fireNSTimer与runloopNSTimer与performSelector

2021-05-25 14:34:09 684 1

原创 iOS开发 事件响应链和事件的传递

事件传递链和事件响应链事件传递链事件响应链第一响应者确定响应链沿响应链处理事件二者关系特殊情况总结我们在手机屏幕上进行的每一次触摸,它背后的事件传递和响应传递机制是什么样的呢?在iOS中,事件链分两种:事件传递链、事件响应链。事件传递链事件传递链:在hit-testing中,事件为找到第一响应者,由试图层级自下而上、试图关系从父到子的顺序传递的各个试图组成的链状的层级结构,称为事件的传递链。我们用手指轻触屏幕,首先是app的UIApplication对象接收到了这次UITouch事件,紧接着UIA

2021-05-14 14:40:59 1093

原创 iOS开发 指针变量

指针变量在程序员肉眼可见的世界里,任何一个变量有两个属性:名称和值。但是,在计算机内部会用内存地址代替名称,于是变量在经过编译器编译之后,这两个属性就变成了地址和值。对于普通变量,值存放的就是自己要保存的对应类型的值,比如123;但是对于指针变量,变量的值存放的却是另外一个变量的地址,比如0xFFc1。所以,我们可以称指针变量是存放其他变量地址的变量。&p、p、*p的区别:p首先是一个变量,那么&p就表示编译器为变量p开辟的内存地址;p不仅是一个变量,还是一个指针变量,那么它肯定

2021-03-02 16:08:38 110

原创 iOS开发 类和对象的理解

OC-类和对象的理解OC语言里,每一个类实例对象是一个指向objc_object结构体的指针,每一个类对象是一个指向objc_class结构体的指针。在objc_object结构体中仅有一个isa指针成员。/// Represents an instance of a class.struct objc_object { Class _Nonnull isa OBJC_ISA_AVAILABILITY;};而在objc_class结构体中,除了isa指针之外它还有例如name(类名)、

2020-09-23 16:03:36 91

原创 iOS开发 程序的启动

当我们启动某个应用之后(比如点击应用图标),我们就可以在程序中进行各种交互;当我们退出应用的之后(比如点击home键),我们就不能再跟它进行任何交互。这个过程就体现了一个程序的生命周期。一. 名词解释UIApplication程序启动之后创建的第一个对象就是application对象,而且这是一个单例对象,有且只有一个,也不允许我们在程序中另行创建。我们可以通过它进行一些应用级别的设置。APPDelegate它是UIApplication的代理,默认遵守UIApplicationDelega.

2020-05-23 16:35:25 127

原创 iOS开发 静态库和动态库

库是程序代码的集合,是程序开发者与其他开发者之间进行代码共享的一种方式。库根据源代码的公开情况可以分为开源库和闭源库。开源库的源代码可见,比如afnetworking;闭源库的源代码不可见,是一段编译好的二进制代码。闭源库又根据相对编译时和运行时分为静态库和动态库。一.动态库和静态库的区别。格式区别静态库的格式:.a 和 .framework 。动态库的格式:.dylib 和 .framework。其中,系统的.framework都是动态库。使用上的区别:前面说了,静态库和动态库的区别主要.

2020-05-22 14:40:54 936 1

原创 iOS开发 缓存

一.为什么要使用缓存?两点原因吧:服务器:避免每次都去请求服务器,减少服务器压力。客户端:减少了网络请求次数,节省了流量,提高了客户端的体验。二.缓存方式。内存缓存:内存缓存具有速度快容量小的特点,主要用来存储临时文件,供手机的CPU直接读取。内存是指程序的运行空间,比如打开一个程序,他就会占用一定容量的内存,当程序关闭的时候这部分内存又会被释放回收。iOS的内存分区按低地址到高地址依次为:代码区(存储代码)、常量区(存储常量)、全局区(又称静态区,存储全局变量和静态变量)、堆区(存储自己创

2020-05-19 16:06:59 294

原创 iOS开发 block的三种形式

iOS中的block有三种类型:全局block,NSConcreteGlobalBlock,存储在全局内存中,由系统控制。栈block,NSConcreteStackBlock,存储在栈内存中,一般作为函数参数使用。如果block定义在函数内部,并且定义的时候同时使用了函数内部的变量,那么这个block就是栈block。调用函数开辟的堆内存在函数执行完立即销毁,堆block也会随之销毁,再次调用就会发生空指针异常。所以我们平时在使用block的时候,为了延长它的生命周期,一般都会使用copy修饰。堆

2020-05-18 16:46:09 1325

原创 iOS开发 KVO

一. 名词解释KVO(key-Value Observing),键值编码。通过对目标对象的属性进行观察,当属性值发生变化时,触发观察者对象实现的KVO接口方法来自动通知观察者。简单的说,就是一个对象可以通过KVC监听另外一个对象的状态变化。...

2020-05-16 14:58:26 114

原创 iOS开发 KVC

KVC(key-value coding)键值编码,是指在iOS开发中开发者可以在运行时动态地通过key值去设置和访问对象的属性的一种方法。由于它是一种基于运行时的编程方式而不是在编译时,所以被很多开发者惯称为iOS开发中的黑魔法之一。一.下面是KVC最重要的四个方法: 1. (void)setValue:(nullable id)value forKey:(NSString *)key;//通过Key来设值 2. (nullable id)valueForKey:(NSString *)key;//

2020-05-15 16:40:45 124

原创 iOS开发 团队编码规范

iOS团队编码规范见名知义。命名应该直观的描述命名对象,避免歧义。上下文一致。比如删除,在前面使用了remove,后面就不要再使用delete。命名精简,尽量减少命名对象的长度,但是也不要随便使用缩写,除非是很常见的或者是项目中定义好的缩写。文件目录和类使用大驼峰命名法;其他使用小驼峰命名法,比如属性,方法名等。优先使用全局常量,尽量减少宏的使用。备注:开发人员在新建类时最好在类名前面添加之前就约定好的属于自己的缩写,这样就能方便解决好多不必纠结的责任划分问题,比如团队开发中的bug指派。

2020-05-15 10:52:27 139

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除