Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Liknar Windows SIZE-strukturen , som implementerar en relativ koordinat eller position.
Syntax
class CSize : public tagSIZE
Medlemmar
Offentliga konstruktorer
| Namn | Beskrivning |
|---|---|
| CSize::CSize | Konstruerar ett CSize objekt. |
Offentliga operatörer
| Namn | Beskrivning |
|---|---|
| CSize::operator - | Subtraherar två storlekar. |
| CSize::operator != | Söker efter olikheter mellan CSize och en storlek. |
| CSize::operator + | Lägger till två storlekar. |
| CSize::operator += | Lägger till en storlek i CSize. |
| CSize::operator -= | Subtraherar en storlek från CSize. |
| CSize::operator == | Söker efter likhet mellan CSize och en storlek. |
Anmärkningar
Den här klassen härleds från SIZE strukturen. Det innebär att du kan skicka en CSize i en parameter som anropar för en SIZE och att datamedlemmarna i SIZE strukturen är tillgängliga datamedlemmar CSizei .
Och cxcy medlemmar i SIZE (och CSize) är offentliga. Dessutom CSize implementerar medlemsfunktioner för att manipulera SIZE strukturen.
Anmärkning
Mer information om delade verktygsklasser (t.ex CSize. ) finns i Delade klasser.
Arvshierarki
tagSIZE
CSize
Kravspecifikation
Rubrik: atltypes.h
CSize::CSize
Konstruerar ett CSize objekt.
CSize() throw();
CSize( int initCX, int initCY) throw();
CSize( SIZE initSize) throw();
CSize( POINT initPt) throw();
CSize( DWORD dwSize) throw();
Parameterar
initCX
cx Anger medlemmen för CSize.
initCY
cy Anger medlemmen för CSize.
initSize
SIZE-struktur eller CSize objekt som används för att initiera CSize.
initPt
PUNKTstruktur eller CPoint objekt som används för att initiera CSize.
dwSize
DWORD som används för att initiera CSize. Lågordningsordet cx är medlemmen och högordningsordet cy är medlemmen.
Anmärkningar
Om inga argument anges cx och cy initieras till noll.
Exempel
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 ==
Söker efter likhet mellan två storlekar.
BOOL operator==(SIZE size) const throw();
Anmärkningar
Returnerar nonzero om storlekarna är lika, annars 0.
Exempel
CSize sz1(135, 135);
CSize sz2(135, 135);
ASSERT(sz1 == sz2);
CSize::operator !=
Söker efter olikhet mellan två storlekar.
BOOL operator!=(SIZE size) const throw();
Anmärkningar
Returnerar nonzero om storlekarna inte är lika med, annars 0.
Exempel
CSize sz1(222, 222);
CSize sz2(111, 111);
ASSERT(sz1 != sz2);
CSize::operator +=
Lägger till en storlek i den här CSize.
void operator+=(SIZE size) throw();
Exempel
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 -=
Subtraherar en storlek från den här CSize.
void operator-=(SIZE size) throw();
Exempel
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 +
Dessa operatorer lägger till det här CSize värdet i värdet för parametern.
CSize operator+(SIZE size) const throw();
CPoint operator+(POINT point) const throw();
CRect operator+(const RECT* lpRect) const throw();
Anmärkningar
Se följande beskrivningar av de enskilda operatorerna:
operator +(size)
Den här åtgärden lägger till två
CSizevärden.operator +(point)
Den här åtgärden förskjuter (flyttar) ett POINT-värde (eller CPoint) med det här
CSizevärdet. Ochcxcymedlemmar i det härCSizevärdet läggs till ixyoch datamedlemmar iPOINTvärdet. Det är analogt med den version av CPoint::operator + som tar en SIZE-parameter .operator +(lpRect)
Den här åtgärden förskjuter (flyttar) ett RECT-värde (eller CRect) med det här
CSizevärdet. Ochcxcymedlemmar i det härCSizevärdet läggs till ilefttop, ,rightochbottomdatamedlemmar iRECTvärdet. Det motsvarar den version av CRect::operator + som tar en SIZE-parameter .
Exempel
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 -
De tre första operatorerna subtraherar det här CSize värdet till värdet för parametern.
CSize operator-(SIZE size) const throw();
CPoint operator-(POINT point) const throw();
CRect operator-(const RECT* lpRect) const throw();
CSize operator-() const throw();
Anmärkningar
Den fjärde operatorn, det unary minus, ändrar värdets CSize tecken. Se följande beskrivningar av de enskilda operatorerna:
operatorn -(size)
Den här åtgärden subtraherar två
CSizevärden.operatorn -(point)
Den här åtgärden förskjuter (flyttar) ett POINT - eller CPoint-värde med additiv invertering av det här
CSizevärdet. Ochcxcyför det härCSizevärdet subtraheras frånxyoch datamedlemmar iPOINTvärdet. Det är analogt med versionen av CPoint::operator – som tar en SIZE-parameter .operator -(lpRect)
Den här åtgärden förskjuter (flyttar) ett RECT - eller CRect-värde med additiv invertering av det här
CSizevärdet. Medlemmarnacxochcyi det härCSizevärdet subtraheras frånlefttop, ,rightochbottomdatamedlemmar iRECTvärdet. Det är analogt med versionen av CRect::operator – som tar en SIZE-parameter .operatorn -()
Den här åtgärden returnerar den additiva inverteringen av det här
CSizevärdet.
Exempel
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);