【发布时间】:2012-04-04 16:13:02
【问题描述】:
我想创建一个类似于 CGPoint 的结构,但使用 3 个坐标而不是 2 个坐标。
我通过以下方式创建它:
typedef struct {CGFloat x;CGFloat y;CGFloat z;} CG3Vector;
CG_INLINE CG3Vector CG3VectorMake(CGFloat x, CGFloat y, CGFloat z)
{
CG3Vector p; p.x = x; p.y = y; p.z = z; return p;
}
它工作正常。但我现在想改进这个结构,使其具有像 CGPoint 这样的常量:CGPointZero
还有什么方法可以为结构的特定组件引入限制,就像 CGSize 一样,组件永远不会低于 0?
谢谢。
【问题讨论】:
-
不是浮点数,但你听说过无符号类型吗?
-
不要在你自己的类型上使用
CG前缀;它属于 Core Graphics。
标签: objective-c struct components constants limit