CSize 클래스
상대 좌표 또는 위치를 구현하는 Windows SIZE 구조체와 유사합니다.
구문
class CSize : public tagSIZE
멤버
공용 생성자
속성 | 설명 |
---|---|
CSize::CSize | CSize 개체를 생성합니다. |
Public 연산자
속성 | 설명 |
---|---|
CSize::operator - | 두 크기를 뺍니다. |
CSize::operator != | 크기 간의 CSize 같지 않음을 확인합니다. |
CSize::operator + | 두 가지 크기를 추가합니다. |
CSize::operator += | 에 크기를 추가합니다 CSize . |
CSize::operator -= | 에서 크기를 CSize 뺍니다. |
CSize::operator == | 크기 간의 CSize 같음을 확인합니다. |
설명
이 클래스는 구조체 SIZE
에서 파생됩니다. 즉, 구조체의 CSize
데이터 멤버가 액세스할 수 있는 데이터 멤버 SIZE
CSize
인 매개 SIZE
변수를 전달할 수 있습니다.
cx
및 cy
)CSize
의 SIZE
멤버는 public입니다. 또한 CSize
멤버 함수를 구현하여 구조를 조작합니다 SIZE
.
참고 항목
공유 유틸리티 클래스(예: CSize
공유 클래스)에 대한 자세한 내용은 공유 클래스를 참조 하세요.
상속 계층 구조
tagSIZE
CSize
요구 사항
헤더: atltypes.h
CSize::CSize
CSize
개체를 생성합니다.
CSize() throw();
CSize( int initCX, int initCY) throw();
CSize( SIZE initSize) throw();
CSize( POINT initPt) throw();
CSize( DWORD dwSize) throw();
매개 변수
initCX
에 cx
대한 멤버를 CSize
설정합니다.
initCY
에 cy
대한 멤버를 CSize
설정합니다.
initSize
CSize
를 초기화하는 데 사용되는 크기 구조 또는 CSize
개체입니다.
initPt
CSize
를 초기화 하는 데 사용되는 요소 구조 또는 CPoint
개체입니다.
dwSize
를 초기화하는 CSize
데 사용되는 DWORD입니다. 하위 단어는 멤버이고 cx
상위 단어는 멤버입니다 cy
.
설명
인수가 지정 cx
되지 않고 cy
0으로 초기화되는 경우
예시
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 ==
두 크기 사이의 같음을 확인합니다.
BOOL operator==(SIZE size) const throw();
설명
크기가 같으면 0이 아닌 값을 반환하고, 0을 반환합니다.
예시
CSize sz1(135, 135);
CSize sz2(135, 135);
ASSERT(sz1 == sz2);
CSize::operator !=
두 크기 사이의 같지 않음을 확인합니다.
BOOL operator!=(SIZE size) const throw();
설명
크기가 같지 않으면 0이 아닌 값을 반환하고, 그렇지 않으면 0을 반환합니다.
예시
CSize sz1(222, 222);
CSize sz2(111, 111);
ASSERT(sz1 != sz2);
CSize::operator +=
이 CSize
에 크기를 추가합니다.
void operator+=(SIZE size) throw();
예시
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 -=
이 CSize
크기에서 크기를 뺍니다.
void operator-=(SIZE size) throw();
예시
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 +
이러한 연산자는 이 CSize
값을 매개 변수 값에 추가합니다.
CSize operator+(SIZE size) const throw();
CPoint operator+(POINT point) const throw();
CRect operator+(const RECT* lpRect) const throw();
설명
개별 연산자의 다음 설명을 참조하세요.
operator +( size )
이 작업은 두
CSize
값을 추가합니다.operator +( point )
이 작업은 POINT(또는 CPoint) 값을 이
CSize
값으로 오프셋(이동)합니다.cx
이CSize
값의 멤버 및cy
값의y
x
데이터 멤버POINT
에 추가됩니다. SIZE 매개 변수를 사용하는 CPoint::operator + 버전과 유사합니다.operator +( lpRect )
이 작업은 RECT(또는 CRect) 값을 이
CSize
값으로 오프셋(이동)합니다.cx
이CSize
값의 멤버 및cy
멤버는 값의left
,right
top
및bottom
데이터 멤버에RECT
추가됩니다. SIZE 매개 변수를 사용하는 CRect::operator + 버전과 유사합니다.
예시
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 -
이러한 연산자 중 처음 3개는 이 CSize
값을 매개 변수 값으로 뺍니다.
CSize operator-(SIZE size) const throw();
CPoint operator-(POINT point) const throw();
CRect operator-(const RECT* lpRect) const throw();
CSize operator-() const throw();
설명
네 번째 연산자( 단항 빼기)는 값의 부호를 변경합니다 CSize
. 개별 연산자의 다음 설명을 참조하세요.
operator -( size )
이 작업은 두
CSize
값을 뺍니다.operator -( point )
이 작업은 POINT 또는 CPoint 값을 이
CSize
값의 역가산값으로 오프셋(이동)합니다. 이 값의 값과cy
값의 데이터 멤버에서x
y
빼집니다POINT
.CSize
cx
SIZE 매개 변수를 사용하는 CPoint::operator 버전과 유사합니다.operator -( lpRect )
이 작업은 RECT 또는 CRect 값을 이
CSize
값의 역가산값으로 오프셋(이동)합니다. 이CSize
값의 멤버와cy
멤버는cx
값의left
,top
및right
bottom
데이터 멤버RECT
에서 뺍니다. SIZE 매개 변수를 사용하는 CRect::operator 버전과 유사합니다.operator -()
이 작업은 이
CSize
값의 역가산을 반환합니다.
예시
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);