Share via


CSize, classe

Semblable à la structure SIZE Windows, qui implémente une coordonnée ou une position relative.

Syntaxe

class CSize : public tagSIZE

Membres

Constructeurs publics

Nom Description
CSize ::CSize Construit un objet CSize.

Opérateurs publics

Nom Description
CSize ::operator - Soustrait deux tailles.
CSize ::operator != Vérifie l’inégalité entre CSize et une taille.
CSize ::operator + Ajoute deux tailles.
CSize ::operator += Ajoute une taille à CSize.
CSize ::operator -= Soustrait une taille de CSize.
CSize ::operator == Vérifie l’égalité entre CSize et une taille.

Notes

Cette classe est dérivée de la SIZE structure. Cela signifie que vous pouvez transmettre un CSize paramètre qui appelle un SIZE paramètre et que les membres de données de la SIZE structure sont des membres de données accessibles de CSize.

Les membres et cy les cx membres de SIZE (etCSize) sont publics. En outre, CSize implémente les fonctions membres pour manipuler la SIZE structure.

Remarque

Pour plus d’informations sur les classes utilitaires partagées (par CSizeexemple), consultez Classes partagées.

Hiérarchie d'héritage

tagSIZE

CSize

Spécifications

En-tête : atltypes.h

CSize ::CSize

Construit un objet CSize.

CSize() throw();
CSize( int initCX, int initCY) throw();
CSize( SIZE initSize) throw();
CSize( POINT initPt) throw();
CSize( DWORD dwSize) throw();

Paramètres

initCX
Définit le cx membre pour le CSize.

initCY
Définit le cy membre pour le CSize.

initSize
Structure ou objet SIZE utilisé pour initialiser CSize.CSize

initPt
Structure ou objet POINT utilisé pour initialiser CSize.CPoint

dwSize
DWORD utilisé pour initialiser CSize. Le mot de bas ordre est le cx membre et le mot de classement élevé est le cy membre.

Notes

Si aucun argument n’est donné et cxcy qu’il est initialisé à zéro.

Exemple

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 ==

Vérifie l’égalité entre deux tailles.

BOOL operator==(SIZE size) const throw();

Notes

Retourne une valeur différente de zéro si les tailles sont égales, d’autres valeurs sont égales à 0.

Exemple

CSize sz1(135, 135);
CSize sz2(135, 135);

ASSERT(sz1 == sz2);

CSize ::operator !=

Vérifie l’inégalité entre deux tailles.

BOOL operator!=(SIZE size) const throw();

Notes

Retourne une valeur différente de zéro si les tailles ne sont pas égales, sinon 0.

Exemple

CSize sz1(222, 222);
CSize sz2(111, 111);

ASSERT(sz1 != sz2);   

CSize ::operator +=

Ajoute une taille à ce CSize.

void operator+=(SIZE size) throw();

Exemple

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 -=

Soustrait une taille de ce CSize.

void operator-=(SIZE size) throw();

Exemple

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 +

Ces opérateurs ajoutent cette CSize valeur à la valeur du paramètre.

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

Notes

Consultez les descriptions suivantes des opérateurs individuels :

  • opérateur +(size)

    Cette opération ajoute deux CSize valeurs.

  • opérateur +(point)

    Cette opération décalage (déplace) une valeur POINT (ou CPoint) par cette CSize valeur. Les cx membres et cy les membres de cette CSize valeur sont ajoutés aux x membres de y données de la POINT valeur. Il est analogue à la version de CPoint ::operator + qui prend un paramètre SIZE .

  • operator +(lpRect)

    Cette opération décalage (déplace) une valeur RECT (ou CRect) par cette CSize valeur. Les cx membres et cy les membres de cette CSize valeur sont ajoutés aux leftmembres de la RECT valeur , top, rightet bottom aux données. Il est analogue à la version de CRect ::operator + qui prend un paramètre SIZE .

Exemple

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 -

Les trois premiers de ces opérateurs soustraient cette CSize valeur à la valeur du paramètre.

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

Notes

Le quatrième opérateur, moins unaire, modifie le signe de la CSize valeur. Consultez les descriptions suivantes des opérateurs individuels :

  • operator -(size)

    Cette opération soustrait deux CSize valeurs.

  • operator -(point)

    Cette opération décalage (déplace) une valeur POINT ou CPoint par l’inverse additif de cette CSize valeur. La cx valeur et cy celle-ci CSize sont soustraites des membres de xy données de la POINT valeur. Il est analogue à la version de CPoint ::operator , qui prend un paramètre SIZE .

  • operator -(lpRect)

    Cette opération offset (déplace) une valeur RECT ou CRect par l’inverse additif de cette CSize valeur. Les cx membres et cy les membres de cette CSize valeur sont soustractés des membres de la leftRECT valeur , top, rightet bottom des données. Il est analogue à la version de CRect ::operator , qui prend un paramètre SIZE .

  • operator -()

    Cette opération retourne l’inverse additif de cette CSize valeur.

Exemple

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

Voir aussi

Exemple MFC MDI
Graphique hiérarchique
CRect, classe
CPoint, classe