Classe CSize
Simile alla struttura SIZE di Windows, che implementa una coordinata o una posizione relativa.
Sintassi
class CSize : public tagSIZE
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
CSize::CSize | Costruisce un oggetto CSize . |
Operatori pubblici
Nome | Descrizione |
---|---|
CSize::operator - | Sottrae due dimensioni. |
CSize::operator != | Verifica la disuguaglianza tra CSize e una dimensione. |
CSize::operator + | Aggiunge due dimensioni. |
CSize::operator += | Aggiunge una dimensione a CSize . |
CSize::operator -= | Sottrae una dimensione da CSize . |
CSize::operator == | Verifica l'uguaglianza tra CSize e una dimensione. |
Osservazioni:
Questa classe è derivata dalla SIZE
struttura . Ciò significa che è possibile passare un oggetto CSize
in un parametro che chiama un SIZE
oggetto e che i membri dati della SIZE
struttura sono membri dati accessibili di CSize
.
I cx
membri e cy
di SIZE
(e CSize
) sono pubblici. Implementa inoltre CSize
funzioni membro per modificare la SIZE
struttura.
Nota
Per altre informazioni sulle classi di utilità condivise (ad esempio CSize
), vedere Classi condivise.
Gerarchia di ereditarietà
tagSIZE
CSize
Requisiti
Intestazione: atltypes.h
CSize::CSize
Costruisce un oggetto CSize
.
CSize() throw();
CSize( int initCX, int initCY) throw();
CSize( SIZE initSize) throw();
CSize( POINT initPt) throw();
CSize( DWORD dwSize) throw();
Parametri
initCX
Imposta il cx
membro per l'oggetto CSize
.
initCY
Imposta il cy
membro per l'oggetto CSize
.
initSize
Struttura SIZE o CSize
oggetto utilizzato per inizializzare CSize
.
initPt
Struttura POINT o CPoint
oggetto utilizzato per inizializzare CSize
.
dwSize
DWORD usato per inizializzare CSize
. La parola in ordine basso è il cx
membro e la parola dell'ordine elevato è il cy
membro.
Osservazioni:
Se non vengono specificati cx
argomenti e cy
vengono inizializzati su zero.
Esempio
CSize szEmpty;
CSize szPointA(10, 25);
SIZE sz;
sz.cx = 10;
sz.cy = 25;
CSize szPointB(sz);
POINT pt;
pt.x = 10;
pt.y = 25;
CSize szPointC(pt);
CPoint ptObject(10, 25);
CSize szPointD(ptObject);
DWORD dw = MAKELONG(10, 25);
CSize szPointE(dw);
ASSERT(szPointA == szPointB);
ASSERT(szPointB == szPointC);
ASSERT(szPointC == szPointD);
ASSERT(szPointD == szPointE);
CSize::operator ==
Verifica l'uguaglianza tra due dimensioni.
BOOL operator==(SIZE size) const throw();
Osservazioni:
Restituisce un valore diverso da zero se le dimensioni sono uguali, otherwize 0.
Esempio
CSize sz1(135, 135);
CSize sz2(135, 135);
ASSERT(sz1 == sz2);
CSize::operator !=
Verifica la disuguaglianza tra due dimensioni.
BOOL operator!=(SIZE size) const throw();
Osservazioni:
Restituisce un valore diverso da zero se le dimensioni non sono uguali, in caso contrario 0.
Esempio
CSize sz1(222, 222);
CSize sz2(111, 111);
ASSERT(sz1 != sz2);
CSize::operator +=
Aggiunge una dimensione all'oggetto CSize
.
void operator+=(SIZE size) throw();
Esempio
CSize sz1(100, 100);
CSize sz2(50, 25);
sz1 += sz2;
CSize szResult(150, 125);
ASSERT(sz1 == szResult);
// works with SIZE, too
sz1 = CSize(100, 100);
SIZE sz3;
sz3.cx = 50;
sz3.cy = 25;
sz1 += sz3;
ASSERT(sz1 == szResult);
CSize::operator -=
Sottrae una dimensione da questo CSize
oggetto .
void operator-=(SIZE size) throw();
Esempio
CSize sz1(100, 100);
CSize sz2(50, 25);
sz1 -= sz2;
CSize szResult(50, 75);
ASSERT(sz1 == szResult);
// works with SIZE, too
sz1 = CSize(100, 100);
SIZE sz3;
sz3.cx = 50;
sz3.cy = 25;
sz1 -= sz3;
ASSERT(sz1 == szResult);
CSize::operator +
Questi operatori aggiungono questo CSize
valore al valore del parametro .
CSize operator+(SIZE size) const throw();
CPoint operator+(POINT point) const throw();
CRect operator+(const RECT* lpRect) const throw();
Osservazioni:
Vedere le descrizioni seguenti dei singoli operatori:
operator +( size )
Questa operazione aggiunge due
CSize
valori.operator +( point )
Questa operazione scosta (sposta) un valore POINT (o CPoint) in base a questo
CSize
valore. Icx
membri ecy
di questoCSize
valore vengono aggiunti aix
membri dati ey
delPOINT
valore . È analogo alla versione di CPoint::operator + che accetta un parametro SIZE .operator +( lpRect )
Questa operazione scosta (sposta) un valore RECT (o CRect) in base a questo
CSize
valore. Icx
membri ecy
di questoCSize
valore vengono aggiunti aileft
membri dati ,right
top
, ebottom
delRECT
valore . È analogo alla versione di CRect::operator + che accetta un parametro SIZE .
Esempio
CSize sz1(100, 100);
CSize sz2(50, 25);
CSize szOut;
szOut = sz1 + sz2;
CSize szResult(150, 125);
ASSERT(szOut == szResult);
// works with SIZE, too
sz1 = CSize(100, 100);
SIZE sz3;
sz3.cx = 50;
sz3.cy = 25;
szOut = sz1 + sz3;
ASSERT(szOut == szResult);
CSize::operator -
I primi tre di questi operatori sottraggono questo CSize
valore al valore del parametro .
CSize operator-(SIZE size) const throw();
CPoint operator-(POINT point) const throw();
CRect operator-(const RECT* lpRect) const throw();
CSize operator-() const throw();
Osservazioni:
Il quarto operatore, l'unario meno, modifica il segno del CSize
valore. Vedere le descrizioni seguenti dei singoli operatori:
operator -( size )
Questa operazione sottrae due
CSize
valori.operator -( point )
Questa operazione scosta (sposta) un valore POINT o CPoint in base all'inverso aggiuntivo di questo
CSize
valore. Ecx
di questoCSize
valore vengono sottratti daix
membri dati ecy
y
delPOINT
valore . È analogo alla versione di CPoint::operator , che accetta un parametro SIZE .operator -( lpRect )
Questa operazione scosta (sposta) un valore RECT o CRect in base all'inverso aggiuntivo di questo
CSize
valore. Icx
membri ecy
di questoCSize
valore vengono sottratti daileft
membri dati ,top
,right
ebottom
delRECT
valore . È analogo alla versione di CRect::operator , che accetta un parametro SIZE .operator -()
Questa operazione restituisce l'inverso aggiuntivo di questo
CSize
valore.
Esempio
CSize sz1(100, 100);
CSize sz2(50, 25);
CSize szOut;
szOut = sz1 - sz2;
CSize szResult(50, 75);
ASSERT(szOut == szResult);
// works with SIZE, too
sz1 = CSize(100, 100);
SIZE sz3;
sz3.cx = 50;
sz3.cy = 25;
szOut = sz1 - sz3;
ASSERT(szOut == szResult);
Vedi anche
MDI di esempio MFC
Grafico della gerarchia
Classe CRect
Classe CPoint