CPoint::operator-
처음 두 오버 로드 중 하나를 사용을 CPoint 또는 CSize 개체에서 CPoint.
CSize operator -(
POINT point
) const throw( );
CPoint operator -(
SIZE size
) const throw( );
CRect operator -(
const RECT* lpRect
) const throw( );
CPoint operator -( ) const throw( );
매개 변수
반환 값
A CSize 즉 두 점 간의 차이 CPoint 는 크기의 부정으로 오프셋는 CRect 점의 부정으로 오프셋 또는 CPoint 부정 포인트입니다.
설명
세 번째 오버 로드 오프셋은 CRect 의 부정으로 CPoint.마지막으로 단항 연산자를 사용 하 여 부정 하기 위해 CPoint.
예를 들어, 첫 번째 오버 로드를 사용 하 여 두 지점 사이의 차이 찾을 수 CPoint(25, -19) 및 CPoint(15, 5) 반환 CSize(10, -24).
빼서는 CSize 에서 CPoint 위와 같은 계산을 하지는 않지만 반환 된 CPoint 개체 없습니다는 CSize 개체.예를 들어, 두 번째 오버 로드를 사용 하 여 지점 간의 차이 찾을 수 CPoint(25, -19) 크기 CSize(15, 5) 반환 CPoint(10, -24).
사각형에서 점 뺀 사각형 오프셋의 네거티브에서 반환 된 x 및 y 지점에 지정 된 값.예를 들어, 마지막으로 오버 로드를 사용 하 여 사각형을 오프셋 CRect(125, 200, 325, 400) 점으로 CPoint(25, -19) 반환 CRect(100, 219, 300, 419).
점을 부정 하는 단항 연산자를 사용 합니다.예를 들어 지점에 단항 연산자를 사용 하 여 CPoint(25, -19) 반환 CPoint(-25, 19).
예제
// example for CPoint subtraction
CPoint ptStart(100, 100);
CSize szOffset(35, 35);
CPoint ptEnd;
ptEnd = ptStart - szOffset;
CPoint ptResult(65, 65);
ASSERT(ptResult == ptEnd);
// also works on SIZE
ptStart = CPoint(100, 100);
SIZE sz;
sz.cx = 35;
sz.cy = 35;
ptEnd = ptStart - sz;
ASSERT(ptResult == ptEnd);
// example for CPoint unary operator
CPoint pt(35, 35);
pt = -pt;
CPoint ptNeg(-35, -35);
ASSERT(pt == ptNeg);
요구 사항
헤더: atltypes.h