VC++, OO & ME

原创 2006年05月18日 19:07:00

  面向对象课程设计终于完成了,我也终于学会了使用VC++。真有一种如释重负的感觉。这对我来说这应该算是一个小小的里程碑吧。在此记录一下。

  对VC呢,我只能说它的确是一块够硬的骨头。我从大二开始就在想把它啃掉,可是一直也没有把时间真正地用在它身上。编译原理、离散数学、操作系统……门门都是很重要的专业课,我一门也不想放弃。直到这个学期,面向对象课程设计被要求只能用VC做,看来是不能再拖下去了。只有放弃一些课程了。毕竟学VC还是比较费时间的。

  大二的数据结构课程设计就要求用VC做,我也是从那时开始啃VC这块骨头的。那时我只学过C语言,还没学C++,得知Charles Petzold写的Programming Windows就是给我这只会C的人看的,我便开始硬着头皮在电脑上看电子版。但看了一半我就看不下去了。因为我发现自己依然还是不会用VC,而且面对VC我只知道可以用API调用来写界面,完全不懂什么MFC。因而我只能用API写数据结构课程设计的界面。在极其痛苦地写出一个界面的框架后,我就彻底放弃了。因为我用API写界面完全感觉不到编程的乐趣,有的只是痛苦。我想不通为什么别人学习VC为什么能那么容易就搞定了。后来得知他们是学的MFC,我便开始看MFC的内容。结果学得一头雾水。这个类,那个类,这个继承那个,那个又继承这个。都什么乱七八糟的呀。我不得不再次停止。

  暑假,某些其它的原因促使我不得不开始学习C++。对类的理解让我开始了解OO的设计思想。但我还是不清楚类的真正用处。我不明白为什么面向对象的思想就适合对问题的分析与设计,用面向过程的方法不是也挺直观的吗。而且C用很简单的几个语句就能完成的任务,交给C++OO的方法编码就会增加一些明显多余的操作。这到底是为什么呢?

  直到这个学期,我才找到这些问题的答案。我重新开始学习MFC。突然发现它的结构相当清晰,很好理解。对VC的学习一下子变得容易起来。在做OO课程设计时,对类的大量使用也让我体会到了OO的好处,我终明白C++中增加的那些“多余”的操作是为了什么。在对一个系统进行建模时,结构的清晰才是最重要的。这对整个系统的维护及更改都是有益的。如果采用面向过程的设计,在性能方面的确会更好一些,但却使得整个系统的更改变得困难。对于复杂的系统如果用采用面向过程的方法做,编码时也不是很直观,更别说维护了。这次课程设计的编码过程中,我最大的感觉就是:用面向对象的方法编程就象是在做一幅三维立体图形,而以前用面向过程的方法编程就象是在做一幅平面图形。OO的设计就象我们小时候搭积木一样,各部分做好了以后再合起来就是一个完整的模型了。OO的思想果然不错呀。

  回头再看我学习VC的过程,走了一大截弯路。现在想想,我觉得对VC的学习还是应该从C++入手,之后再学MFC。如果想要深入学习Windows程序设计,再去学习API编程。初学VC还是不要从API入手比较好。

 

sumless

相关文章推荐

OO4O简介以及其在VC++中的应用

  • 2008年12月02日 22:46
  • 557KB
  • 下载

VC++ MFC DLL动态链接库编写详解

虽然能用DLL实现的功能都可以用COM来替代,但DLL的优点确实不少,它更容易创建。本文将讨论如何利用VC MFC来创建不同类型的DLL,以及如何使用他们。 一、DLL的不同类型     使用...

VC++ 实现增大可执行文件的体积 自定义文件大小

做免杀的同学可能都会吧,增大文件体积防止云上传是个不错的方法 功能界面: 选择文件,是对话框支持文件拖放(详情见:http://blog.csdn.net/eldn__/artic...
  • eldn__
  • eldn__
  • 2012年12月23日 20:31
  • 3786

VC++中添加工具栏和状态栏

VC++中添加工具栏方法 1、 使用VC生成的工具栏 通过VC资源窗口insert一个工具栏资源IDR_TOOLBAR1,并进行编辑 为对话框类添加一个工具栏变量        CToolBa...

VC++简简单单的代码调用dm.dll

#import "E:\脚本\2.1123\dm.dll" rename("SetWindowText","DmSetWindowText") rename("FindWindow","DmFindW...

VC++中所见即所得打印的简易实现

VC++中所见即所得打印的简易实现   在VC++6.0中用应用程序向导(AppWizard)生成的单文档或多文档程序提供了对打印功能的实现,但遗憾的是如果对自动生成的框架程序不做任何改进,打印出来的...
  • can_yi
  • can_yi
  • 2015年05月14日 17:25
  • 1191

VC++编写USB接口通讯程序

用VC++编写USB接口通讯程序摘要:详细介绍Visual C++ 6.0环境下利用Windows API(Application Program Interface)函数来实现与符合HID设备类的U...

VC++ socket通信实例 总结

1.        两天计算机通信需要协议,通信的两台计算机IP必须唯一 2.        同一个计算机可以进行多个应用程序与其他计算机通信,IP地址唯一,而端口号是区别同一计算机(同一IP)的唯...
  • lcytrl
  • lcytrl
  • 2012年08月22日 15:40
  • 23808

VS中VC++目录中的$是什么意思

$(VC_ExecutablePath_x86); $(WindowsSDK_ExecutablePath); $(VS_ExecutablePath); $(MSBuild_ExecutablePa...
  • zinnc
  • zinnc
  • 2016年06月13日 15:43
  • 4106

深入浅出话VC++(1)——Windows程序内部运行机制

一、引言 要想熟练掌握Windows应用程序的开发,首先需要理解Windows平台下程序运行的内部机制,然而在.NET平台下,创建一个Windows桌面程序,只需要简单地选择Windows窗体应用程...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:VC++, OO & ME
举报原因:
原因补充:

(最多只允许输入30个字)