使用内置对象、类型或其他明显不是的东西有多糟糕,即使它以您需要的方式执行?假设它清楚地评论了你在做什么。
例如,使用单个CGPoint来表示单条线上的起点和终点。我真的应该定义我自己的相同但命名不同的结构吗?
编辑:确定,使用。。。
struct FloatRange {
CGFloat min;
CGFloat max;
};
typedef struct FloatRange FloatRange;
相反这条规则没有例外吗?
为了类型安全,您应该定义自己的。
还要记住,你不能做someRange.start
或someRange.end
。相反,它将是难以理解的someRange.x
或someRange.y
。
只需定义自己适当的结构,即使它具有相同的组成类型。滥用预先存在的结构实际上没有任何好处,但如果你这样做,可读性会受到巨大打击