CG/NSPoint类整数元组类型?

gro*_*hog 2 iphone cocoa objective-c

Apple基础套件中是否提供了适当的结构来表示离散坐标系?我知道我可以只使用NSPoint的积分组件,按惯例保持它离散,甚至可以定义我自己的组件.

但是,如果已经有一个正确输入的我会更喜欢并避免隐式/显式类型的肮脏.

Qui*_*lor 5

我不知道哪一个能满足您的确切需求.你当然可以使用CGPointNSPoint,但既然你知道这些值是离散整数,为什么要浪费精确到不存在的小数部分呢?此外,重复强制转换为整数值会很快变老.使用整数类型创建自己的typedef要好得多,如下所示:

typedef struct _DiscretePoint {
    NSInteger x;
    NSInteger y;
} DiscretePoint;
Run Code Online (Sandbox Code Playgroud)

您也可以使用,int32_t而不是NSInteger如果您知道值将永远不会超过32位范围 - 这将节省64位模式下的一些空间.(有关详细信息,请参阅此SO问题NSInteger等)