Udostępnij za pośrednictwem


CSize, klasa

Podobnie jak struktura ROZMIAR systemu Windows, która implementuje współrzędną względną lub położenie.

Składnia

class CSize : public tagSIZE

Elementy członkowskie

Konstruktory publiczne

Nazwa/nazwisko opis
CSize::CSize CSize Tworzy obiekt.

Operatory publiczne

Nazwa/nazwisko opis
CSize::operator — Odejmuje dwa rozmiary.
CSize::operator != Sprawdza nierówność między CSize i rozmiarem.
CSize::operator + Dodaje dwa rozmiary.
CSize::operator += Dodaje rozmiar do CSizeelementu .
CSize::operator -= Odejmuje rozmiar z CSize.
CSize::operator == Sprawdza równość między CSize i rozmiarem.

Uwagi

Ta klasa pochodzi ze SIZE struktury. Oznacza to, że można przekazać CSize parametr w parametrze, który wywołuje SIZE element i, że elementy członkowskie danych struktury są dostępnymi elementami członkowskimi SIZE danych .CSize

Elementy cx i cy ( SIZE i CSize) są publiczne. Ponadto implementuje funkcje składowe w CSize celu manipulowania strukturą SIZE .

Uwaga

Aby uzyskać więcej informacji na temat udostępnionych klas narzędzi (takich jak CSize), zobacz Klasy udostępnione.

Hierarchia dziedziczenia

tagSIZE

CSize

Wymagania

Nagłówek: atltypes.h

CSize::CSize

CSize Tworzy obiekt.

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

Parametry

initCX
Ustawia element członkowski cx dla elementu CSize.

initCY
Ustawia element członkowski cy dla elementu CSize.

initSize
Struktura rozmiaru lub CSize obiekt używany do inicjowania CSizeelementu .

initPt
Struktura punktów lub CPoint obiekt używany do inicjowania CSizeelementu .

dwSize
DWORD używany do inicjowania CSize. Wyraz o niskiej kolejności jest elementem cx członkowskim, a wyraz o wysokiej kolejności jest członkiem cy .

Uwagi

Jeśli nie podano żadnych argumentów i cx cy są inicjowane do zera.

Przykład

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

Sprawdza równość między dwoma rozmiarami.

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

Uwagi

Zwraca wartość nonzero, jeśli rozmiary są równe, innewize 0.

Przykład

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

ASSERT(sz1 == sz2);

CSize::operator !=

Sprawdza nierówność między dwoma rozmiarami.

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

Uwagi

Zwraca wartość niezerowa, jeśli rozmiary nie są równe, w przeciwnym razie 0.

Przykład

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

ASSERT(sz1 != sz2);   

CSize::operator +=

Dodaje rozmiar do tego CSizeelementu .

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

Przykład

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

Odejmuje rozmiar z tego CSizeelementu .

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

Przykład

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 +

Te operatory dodają tę CSize wartość do wartości parametru.

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

Uwagi

Zobacz następujące opisy poszczególnych operatorów:

  • operator +( rozmiar )

    Ta operacja dodaje dwie CSize wartości.

  • operator +( punkt )

    Ta operacja przesuwa (przenosi) wartość POINT (lub CPoint) o tę CSize wartość. Elementy cx i cy tej CSize wartości są dodawane do x elementów członkowskich i y danych wartości POINT . Jest ona analogiczna do wersji CPoint::operator + , która przyjmuje parametr SIZE .

  • operator +( lpRect )

    Ta operacja przesuwa (przenosi) wartość RECT (lub CRect) o tę CSize wartość. Elementy cx i cy tej CSize wartości są dodawane do leftelementów członkowskich RECT wartości , top, righti bottom danych. Jest ona analogiczna do wersji CRect::operator + , która przyjmuje parametr SIZE .

Przykład

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 —

Pierwsze trzy z tych operatorów odejmuje tę CSize wartość do wartości parametru.

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

Uwagi

Czwarty operator, jednoargumentowy minus, zmienia znak CSize wartości. Zobacz następujące opisy poszczególnych operatorów:

  • operator -( rozmiar )

    Ta operacja odejmuje dwie CSize wartości.

  • operator -( punkt )

    Ta operacja przesuwa (przenosi) wartość POINT lub CPoint przez odwrotność dodawania tej CSize wartości. Wartości cx i cy CSize są odejmowane od x elementów członkowskich POINT i wartości.y Jest ona analogiczna do wersji operatora CPoint::, która przyjmuje parametr SIZE .

  • operator -( lpRect )

    Ta operacja przesuwa (przenosi) wartość RECT lub CRect przez odwrotność dodawania tej CSize wartości. Elementy cx i cy tej CSize wartości są odejmowane od leftelementów członkowskich RECT wartości , top, righti bottom danych. Jest on analogiczny do wersji operatora CRect::, który przyjmuje parametr SIZE .

  • operator -()

    Ta operacja zwraca odwrotność dodawania tej CSize wartości.

Przykład

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

Zobacz też

Przykładowe mdI MFC
Wykres hierarchii
CRect, klasa
CPoint, klasa