在iOS中,objRect
是CGRect
个对象。代码运行正常
if (objRect.origin.x > 0) {
// do something
}
但在它之下,行
NSLog(@"%@", objRect);
将导致错误的内存访问(EXC_BAD_ACCESS
),程序将停止。这是为什么?是否可以打印出对象?
答案 0 :(得分:3)
CGRect不是Objective-C对象,因此无法响应[objRect description](这就是%@的含义)。这是一个结构:
struct CGRect {
CGPoint origin;
CGSize size;
};
typedef struct CGRect CGRect;
如果您想记录CGRect,可以使用NSStringFromCGRect。