Compartilhar via


CPoint::operator -

Use uma das duas primeiras sobrecargas para subtrair um objeto de CPoint ou de CSize de CPoint.

CSize operator -(
   POINT point 
) const throw( );
CPoint operator -(
   SIZE size 
) const throw( );
CRect operator -(
   const RECT* lpRect 
) const throw( );
CPoint operator -( ) const throw( );

Parâmetros

  • point
    Uma estrutura de PONTO ou um objeto de CPoint .

  • size
    Uma estrutura de TAMANHO ou um objeto de CSize .

  • lpRect
    Um ponteiro a estrutura de RECT ou um objeto de CRect .

Valor de retorno

CSize que é a diferença entre dois pontos, CPoint que é deslocada pela negação de um tamanho, um CRect que é deslocado pela negação de um ponto, ou um CPoint que é a negação de um ponto.

Comentários

O terceiro sobrecarregamento desloca CRect pela negação de CPoint.Finalmente, use o operador unário para negar CPoint.

Por exemplo, usando a primeira sobrecarga para localizar a diferença entre dois pontos CPoint(25, -19) e CPoint(15, 5) retorna CSize(10, -24).

Subtrair CSize de CPoint faz o mesmo cálculo que acima mas retorna um objeto de CPoint , não um objeto de CSize .Por exemplo, usando a segunda sobrecarga para localizar a diferença entre o ponto CPoint(25, -19) e o tamanho CSize(15, 5) retorna CPoint(10, -24).

Subtraindo um retângulo de um ponto retorna o deslocamento do retângulo pelos valores negativos e de x de s especificados no ponto.Por exemplo, usando a sobrecarga a última para deslocar o retângulo CRect(125, 200, 325, 400) pelo ponto CPoint(25, -19) retorna CRect(100, 219, 300, 419).

Use o operador unário para negar um ponto.Por exemplo, usando o operador unário com o ponto CPoint(25, -19) retorna CPoint(-25, 19).

Exemplo

// 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);   

Requisitos

Cabeçalho: atltypes.h

Consulte também

Referência

Classe de CPoint

Gráfico de hierarquia

CPoint::operator - =

CPoint::operator +=

CPoint::operator +

CSize::operator -

CRect::operator -

CPoint::Offset

CRect::OffsetRect