美文网首页
FOUNDATION_EXPORT CGFloat和float

FOUNDATION_EXPORT CGFloat和float

作者: 一代骄马 | 来源:发表于2018-04-21 16:39 被阅读184次

iOS开发的一些奇巧淫技3 - CocoaChina_让移动开发更简单

CGFloat和float的区别

这段话的意思就是,64位系统下,CGFLOAT是double类型,32位系统下是float类型.CGFloat能够保证你的代码在64位系统下也不容易出错,所以你的代码应该尽量使用CGFloat.尽管他可能造成一些多余的消耗.不过能保证安全.

FOUNDATION_EXPORT、#define

我的.h文件

FOUNDATION_EXPORT NSString * const kMyConstantString;  

.m文件是这样定义的

NSString * const kMyConstantString = @"Hello";

还有一种是常用的#define方法了

1#define kMyConstantString @"Hello"

有什么区别呢?

使用第一种方法在检测字符串的值是否相等的时候更快.对于第一种你可以直接使用(stringInstance == MyFirstConstant)来比较,而define则使用的是这种.([stringInstance isEqualToString:MyFirstConstant])

哪个效率高,显而易见了.第一种直接比较的是指针地址,而第二个则是一一比较字符串的每一个字符是否相等.

NSInteger 与 NSUInteger 和 int与 NSInteger 区别 - CSDN博客

NSUInteger是无符号的整型, NSInteger是有符号的整型,在表视图应用中常见 NSUInteger row= [indexPath row];因为这是显示tableViewCell有多少个,只能是非零整数的,也就是说,NSUInteger常用于索引值;

 int与 NSInteger

NSInteger是一个封装,它会识别当前操作系统的位数,自动返回最大的类型。用NSInteger,32位系统NSInteger是一个int,即32位,但当时64位系统时,NSInteger便是64位的。

链接:https://www.jianshu.com/p/2abaedc8e8a4

相关文章

网友评论

      本文标题:FOUNDATION_EXPORT CGFloat和float

      本文链接:https://www.haomeiwen.com/subject/yzgxlftx.html