鼠标输入与MFC可视化编程:派生与this指针的应用

需积分: 50 10 下载量 82 浏览量 更新于2024-08-19 收藏 1.95MB PPT 举报
本篇文章主要讨论的是在Microsoft Foundation Classes (MFC)框架下的可视化编程,特别是关于从鼠标获取输入和面向对象编程的概念。MFC是一种用于开发Windows应用程序的工具包,它基于C++语言,提供了丰富的图形用户界面组件。 首先,文章强调了Windows系统中的鼠标输入是通过消息形式传递的,分为非客户区和客户区两种类型。非客户区消息通常由Windows自身处理,而客户区鼠标消息则与用户界面交互紧密,是编程人员关注的重点。 在MFC的可视化编程中,作者推荐了《深入浅出MFC》和《MFCWindows程序设计》这两本书作为参考。这部分内容涵盖了VC++的基础,包括类与对象的概念,如属性(成员变量)和方法(成员函数)。访问权限的公有(public)、保护(protected)和私有(private)在类的设计中起着关键作用。 接下来,文章详细讲解了基类和派生类的概念以及继承机制。通过实例,解释了如何通过基类CShape创建派生类来复用和扩展功能。然而,作者指出在处理像形状对象颜色设置和显示这样的操作时,如果将这些通用操作提升到基类,可能导致代码逻辑不清晰,因为每个形状的display方法需要根据其特定性进行定制。这促使我们理解如何使用虚函数和this指针来解决这类问题。 this指针是一个重要的概念,它在成员函数内部作为一个隐含的参数,允许函数访问调用它的对象的信息。通过this指针,函数可以根据当前对象的状态执行不同的操作。例如,在上述代码示例中,rect1和rect2调用setcolor方法时,实际上是通过this指针传递了各自对象的地址,使得函数能正确处理不同对象的数据。 总结来说,本文通过MFC的视角深入探讨了如何在实际编程中处理鼠标输入,运用面向对象技术(如类、继承、this指针等)实现可维护性和灵活性。这对于理解和编写高效、可扩展的Windows应用程序具有重要意义。