IOS开发中一些受用的编码和调试方法积累
Posted 星语海蓝~~~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS开发中一些受用的编码和调试方法积累相关的知识,希望对你有一定的参考价值。
1.## 与 @# 在宏里面该怎样使用
-
##
的使用, 首先我们添加一个宏1 #define LRWeakSelf(type) __weak typeof(type) weak##type = type;
##
是连接的作用, 即当使用上面的宏会把weak
与输入的type
值连接起来如下图: -
#
的意思是紧跟着它的后面的标识符添加一个双引号""
@#
的使用, 我们添加一个普通的宏:
1 #define LRToast(str) [NSString stringWithFormat:@"%@",str] 2 //这个宏需要这样写 3 LRToast(@"温馨提示"); 4 NSLog(@"%@",LRToast(@"温馨提示"));
强调下我只是随便定义一个宏来做示例, 以上代码是正常的使用,我们在来看看添加@#
是怎么使用的:
1 #define LRToast(str) [NSString stringWithFormat:@"%@",@#str] 2 //这个宏需要这样写 3 LRToast(温馨提示); 4 //正常运行, 打印不会报错 5 NSLog(@"%@",LRToast(温馨提示));
我们可以看出来 LRToast(温馨提示);
与LRToast(@"温馨提示");
区别, 也就是说@#
可以代替@""
那么我们以后开发就省事了, 不用再添加@""
了!
2.用断点调试崩溃问题的小技巧
有时候遇到Bug,会直接崩溃到主函数,这个时候我们更想快速定位崩溃的地方。
Xcode提供了一个全局断点,可以快速定位崩溃的地方,全局断点的添加方法:
但是添加全局断点后会跳转到主函数, 会遇到如上图的情况, 那么80%
的问题就是storyboard
或者xib
拖线没有及时清理掉坏线
,所以会造成崩溃
!
3.App迭代开发版本号的规则
在ios中简单的版本号是怎样管理的呢? 首先我们的App
第一版本首次上线, 比如以1.0.0
为首次上线的版本号:
- 上线后突然发现一个严重的
Bug
那我们就要修复更新版本, 此时我们的版本号为1.0.1
所以说如果修复Bug
或者优化功能, 我们只修改叠加第三位数字, 其他不变
- 如果有了新的需求, 在原来的基础上增加了一个新功能, 那么我们的版本号变为
1.1.0
, 需要清空第三位数字为0
, 来叠加修改第二位数字 - 如果
App
需求功能大改, 更新量非常大, 那我们的版本号变为2.0.0
, 需要叠加修改第一位数字, 清空其他数字为0
以上是关于IOS开发中一些受用的编码和调试方法积累的主要内容,如果未能解决你的问题,请参考以下文章