随笔分类 -  ObjectC

摘要:一、错误类型 1、正常的错误类型通过枚举的方式来定义(通过实现协议Error,但是Error协议进去发现是空的?) enum VendingMachineError: Error { case invalidSelection case outOfStock case insufficientFun 阅读全文
posted @ 2022-05-26 23:28 LCAC 阅读(226) 评论(0) 推荐(0) 编辑
摘要:前提:swift不同数值类型无法进行运算的操作。比如Int16的数值类型不能和Int8的数值类型做加减乘除等操作 所以在进行位运算的时候也不能用Int16的数值类型和Int8的数值类型进行与或非等操作。接下去的均以相同的类型进行运算 一、位运算 1、无符号的位运算均与C语言的操作一样,这里就不再赘述 阅读全文
posted @ 2022-05-19 23:40 LCAC 阅读(238) 评论(0) 推荐(0) 编辑
摘要:swift的访问范围从大到小有:open, public, internal, fileprivate, private 一、private 1、属性和方法:同一文件内的同一个类,也可以是扩展类。如下所示,同一文件内,extension类可以访问 editCount属性 class Student 阅读全文
posted @ 2022-05-12 00:12 LCAC 阅读(127) 评论(0) 推荐(0) 编辑
摘要:swift个属性也是通过指针的方式进行传递或者引用,则需要使用类似的Ojbect-C的智能指针的方式(ARC) Ojbect-c有 __weak, __strong, __unsafe_unretained swift则有与之对应的 weak, strong(默认使用strong), unowned 阅读全文
posted @ 2022-05-09 23:41 LCAC 阅读(29) 评论(0) 推荐(0) 编辑
摘要:一、构造函数使用init(params) {} 的方式 1、当新建一个类的时候,会调用init构造函数,如果类中无init构造函数时候会调用默认的init(){} 构造函数 2、当子类继承父类的时候,子类在init的时候可调用父类的init,通过super.init(params)。如果子类中有le 阅读全文
posted @ 2022-04-22 23:14 LCAC 阅读(130) 评论(0) 推荐(0) 编辑
摘要:一、当使用let声明为const的时候,不管是本身还是在特定的类或者结构体中的变量均不能再做修改 struct Matrix { let rows: Int let columns: Int var grid: [Double] init(rows: Int, columns: Int) { sel 阅读全文
posted @ 2022-04-15 23:47 LCAC 阅读(98) 评论(0) 推荐(0) 编辑
摘要:一、swift函数和objectc函数的参数区别 swift: func great(name: String, day: String) -> String {} objectc: (NSString *)great:(NSString *)name day:(NSString *)day {} 阅读全文
posted @ 2022-04-11 23:54 LCAC 阅读(158) 评论(0) 推荐(0) 编辑
摘要:在对协议进行声明和子类的实现之前,先聊一下声明协议属性的get和set还有子类可能会用到的mutating 1、get和set 在协议中声明属性则需要设置对应的get或者set方法 var simpleDesc: String {get} 上述则说明了子类对于simpleDesc的实现至少是get方 阅读全文
posted @ 2022-04-10 23:36 LCAC 阅读(61) 评论(0) 推荐(0) 编辑
摘要:正常情况下是: condition?A:B; 如果执行condition为true就返回执行A的结果否则返回执行B的结果。 我们经常看到的是:int result = a > 0? 10:100; 如果a>0则返回10否则返回100 这里我们省略了个() 完整的应该是int result = (a 阅读全文
posted @ 2022-04-06 22:14 LCAC 阅读(114) 评论(0) 推荐(0) 编辑
摘要:1、文件支持顺序读取和并列读取 2、文件的读取最好指定读取的最小值和最大值 假设有如下的获取文件 NSString* getFileName() { NSString* desktop = @"/Users/cy_k_yc/Desktop"; NSString* path = [desktop st 阅读全文
posted @ 2022-02-16 23:09 LCAC 阅读(148) 评论(0) 推荐(0) 编辑
摘要:一、在了解类方法和实例方法之前先要知道:什么是实例、什么是类对象、什么是元类对象 1、程序运行之后,存在的类就创建了对应的类对象和元来对象(把他们看成一个对象,而不是简单的类;即一个的实例)(对应的类对象和元类对象都是唯一的) 2、当创建一个类的实例的时候,则会有一个指针指向了对应的类对象(isa) 阅读全文
posted @ 2021-09-16 23:22 LCAC 阅读(798) 评论(0) 推荐(0) 编辑
摘要:一、关于objc_setAssociatedObject和objc_getAssociatedObject的使用,首先需要包含头文件#import <objc/runtime.h> 1、objc_setAssociatedObject objc_setAssociatedObject(<#id _N 阅读全文
posted @ 2021-09-06 07:27 LCAC 阅读(199) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示