CPoint+CSize+CRect学习大纲。
熟知CPoint、CSize、CRect类的基类
class CPoint : public tagPOINT
class CSize : public tagSIZE
class CRect : public tagRECT
留意CPoint、CSize、CRect之间的互操作,什么样的操作会涉及这些类型中的两个或多个。
Point - Point => Size
Point - Size  => Point
Point - Rect  => Rect
Point + Point => Point
Point + Size  => Point
Point + Rect  => Rect
Size  - Point => Point
Size  - Size  => Size
Size  - Rect  => Rect
Size  + Point => Point
Size  + Size  => Size
Size  + Rect  => Rect
Rect  - Point => Rect
Rect  - Size  => Rect
Rect  - Rect  => Rect
Rect  + Point => Rect
Rect  + Size  => Rect
Rect  + Rect  => Rect
掌握CPoint类以下成员
// 数据
x
y
// 构造
CPoint
// 运算
Offset
operator –
operator +
operator +=
operator –=
// 比较
operator !=
operator ==
掌握CSize类以下成员
// 数据
cx
cy
// 构造
CSize
// 运算
operator –
operator +
operator +=
operator –=
// 比较
operator !=
operator ==
掌握CRect类以下成员
// 数据
left
top
right
bottom
// 构造
CRect
SetRect
CopyRect
// 属性
TopLeft
BottomRight
Width
Height
Size
CenterPoint
// 存在性
IsRectEmpty
SetRectEmpty
IsRectNull
// 比较
PtInRect
EqualRect
// 修改
MoveToX
MoveToY
MoveToXY
OffsetRect
InflateRect
DeflateRect
NormalizeRect
SubtractRect
IntersectRect
UnionRect
// 运算符
operator LPCRECT
operator LPRECT
operator =
operator !=
operator ==
operator –
operator +
operator &
operator |
operator +=
operator –=
operator &=
operator |=
掌握CPoint、CSize、CRect之间的互操作,什么样的操作会涉及这些类型中的两个或多个。
Point - Point => Size
Point - Size  => Point
Point - Rect  => Rect
Point + Point => Point
Point + Size  => Point
Point + Rect  => Rect
Size  - Point => Point
Size  - Size  => Size
Size  - Rect  => Rect
Size  + Point => Point
Size  + Size  => Size
Size  + Rect  => Rect
Rect  - Point => Rect
Rect  - Size  => Rect
Rect  - Rect  => Rect
Rect  + Point => Rect
Rect  + Size  => Rect
Rect  + Rect  => Rect
* 加法满足交换律
* 运算不可以移项
* 与Rect有交的运算都产生Rect

转载于:https://www.cnblogs.com/mr-totoro/archive/2012/07/13/5785763.html

[转]CPoint+CSize+CRect学习大纲相关推荐

  1. VC学习:CPoint,CSize,CRect类说明

    CPoint类 类CPoint是对Windows结构POINT的封装,凡是能用POINT结构的地方都可以用CPoint代替. 结构POINT表示屏幕上的一个二维点,其定义为: typedef stru ...

  2. AI人工智能工程师 学习大纲

    在科学技术是第一生产力的时代,生产力需求越大,技术发展越快,随着近年来科技发展的不断提速,AI人工智能技术也被越来越多的人们所认知,有 砖家 预测,未来的5年,AI人工智能技术将全面爆发,逐渐向各行各 ...

  3. 知识图谱学习小组学习大纲

    (这是为北京知识学习小组第一期 kgbj1 准备的为期4周的学习大纲) 2016年6月3日 鲍捷 这个学习小组的目的,不是按教科书的定义去学习"知识图谱",更不是做研究.我们更多是 ...

  4. 《计算机科学概论(第12版)》—第0章0.3节学习大纲

    本节书摘来自异步社区<计算机科学概论(第12版)>一书中的第0章0.3节学习大纲,作者[美]J. 格伦•布鲁克希尔(J. Glenn Brookshear) , 丹尼斯•布里罗(Denni ...

  5. 适合小白的Python学习大纲

    IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰,但是,我们要清楚:淘汰的永远只是那些初级水平的从业者,过硬技术的从业者永远都是稀缺的.因此对于学习,我们还是要踏踏实 ...

  6. Objective-C代码学习大纲

    Objective-C代码学习大纲(1)  http://www.1000phone.net/thread-7141-1-1.html Objective-C代码学习大纲(2) http://www. ...

  7. 大数据Python学习大纲

    最近公司在写一个课程<大数据运维实训课>,分为4个部分,linux实训课.Python开发.hadoop基础知识和项目实战.这门课程主要针对刚从学校毕业的学生去应聘时不会像一个小白菜一样被 ...

  8. 学习嵌入式的书籍推荐,嵌入式编程入门教程学习大纲

    嵌入式系统是当前热门.具发展前景的IT应用领域之一,很多数字包括手机.电子字典.可视电话.数字相机.数字摄像机.机顶盒.智能玩具医疗仪器和航空航天设备等都是典型的嵌入式系统.越来越多的人想要了解学习嵌 ...

  9. html零基础学习入门,nlp网站例:HTML零基础入门-HTML学习大纲.doc

    nlp网站例:HTML零基础入门-HTML学习大纲 一.课程目标 掌握HTML语言,能够直接编写网页程序: 学会使用层叠样式表技术: 了解最常用的客户端脚本语言JAVASCRIPT,能够编写客户端的常 ...

最新文章

  1. beangle commons 4.0.0 release
  2. 汇哲科技-9月1日国盟CISA每日一题
  3. linux平台下 延迟工作队列实例
  4. 网络路径无法访问问题的解决
  5. Unity shader学习之Grab Pass实现玻璃效果
  6. 《看聊天记录都学不会Python到游戏实战?太菜了吧》(10)无底洞的循环
  7. 前端学习(2938):vue对象之间的实例属性ref
  8. 数据集_自动驾驶数据集
  9. 32位存储环境下整数范围为什么是[-2^31,2^31-1]?
  10. 给程序员的几条建议,精彩配图
  11. 论文准备:基于区块链的一些设计IIoT的最新动向调查【已公开发表】
  12. java全栈(java全栈开发工程师)
  13. centos 添加路由命令
  14. 深度网络梯度爆炸的原因、产生的影响和解决方法(常用激活函数)
  15. 【js】不间断空格 特殊的空格-ASCII码值160
  16. DDR3 数据传输 (一)
  17. 逍遥情缘服务器维护没通告,【维护公告】2月2日中午12:00维护公告
  18. 框架模式MVC与MVP在Android中的应用
  19. 研一一整年都在搞深度学习,研二醒悟打算转开发
  20. 015 《海尔是海:张瑞敏随笔选录》读书记

热门文章

  1. java htmlparser 使用教程_HTMLParser使用详解(1)
  2. android 开发环境以及hello world,Android Studio开发环境搭建和HelloWorld
  3. jvm内存结构_JVM系列之内存结构
  4. c语言主函数名用户指定,C语言允许main函数带形参,且形参个数和形参名均可由用户指定。()...
  5. 主流的计算机电源,主流电源评测
  6. Java 遍历系统根目录
  7. C语言变量和数据类型
  8. CRITIC法之matlab
  9. 【蓝桥杯每日一练】 巴斯卡三角形(杨辉三角形)
  10. login.html id=9453,SN100C Sublizenzierung und Aufnahme in die ISO 9453