Objective-Cで私は作業を始めてCGPoints
います.2つを追加する必要があるときは、私がやっている方法は次のとおりです:
CGPoint p1 = CGPointMake(3, 3);
CGPoint p2 = CGPointMake(8, 8);
CGPoint p3 = CGPointMake(p2.x-p1.x, p2.y-p1.y);
私はただできるようにしたい:
CGPoint p3 = p2 - p1;
それは可能ですか?
Objective-Cで私は作業を始めてCGPoints
います.2つを追加する必要があるときは、私がやっている方法は次のとおりです:
CGPoint p1 = CGPointMake(3, 3);
CGPoint p2 = CGPointMake(8, 8);
CGPoint p3 = CGPointMake(p2.x-p1.x, p2.y-p1.y);
私はただできるようにしたい:
CGPoint p3 = p2 - p1;
それは可能ですか?
そして、@ipmcc が提案した「何か」は次のとおりです。C++ 演算子のオーバーロードです。警告: 自宅でこれを行わないでください。
CGPoint operator+(const CGPoint &p1, const CGPoint &p2)
{
CGPoint sum = { p1.x + p2.x, p1.y + p2.y };
return sum;
}
struct
残念ながら、s に算術演算子を使用することはできません。あなたができる最善のことは関数です:
CGPoint NDCGPointMinusPoint(CGPoint p1, CGPoint p2)
{
return (CGPoint){p1.x-p2.x, p1.y-p2.y};
}