Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
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, in caso contrario 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 CSizeoggetto .
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
CSizevalori.operator +(point)
Questa operazione scosta (sposta) un valore POINT (o CPoint) in base a questo
CSizevalore. Icxmembri ecydi questoCSizevalore vengono aggiunti aixmembri dati eydelPOINTvalore . È 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
CSizevalore. Icxmembri ecydi questoCSizevalore vengono aggiunti aileftmembri dati ,topright, ebottomdelRECTvalore . È 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
CSizevalori.operator -(point)
Questa operazione scosta (sposta) un valore POINT o CPoint in base all'inverso aggiuntivo di questo
CSizevalore. Ecxdi questocyvalore vengono sottratti daiCSizemembri dati exydelPOINTvalore . È 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
CSizevalore. Icxmembri ecydi questoCSizevalore vengono sottratti daileftmembri dati ,top,rightebottomdelRECTvalore . È analogo alla versione di CRect::operator , che accetta un parametro SIZE .operator -()
Questa operazione restituisce l'inverso aggiuntivo di questo
CSizevalore.
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