分类:
2008-09-17 11:11:17
()
- ()
-- ()
VC编程入门浅谈(菜鸟必看)
看到那些对VC不知从何下手而苦苦挣扎的朋友,希望我的学习之路能给他们一下借鉴。
学VC并不是传说的那么难,可不下些功夫是学不成的。学编程急不得,没有编程的基础知识上来就学VC肯定碰一头灰,说VC难就难在这点上了。如果硬上,意志坚强的话还能挺过来,但最后还得回头来补习基础知识。意志不坚强的话,很有可能就此放弃,并留下一个VC难得不得了的印象。
其实,只要踏踏实实一步一步来,学VC很简单。对于没有编程基础的人首先要学习编程的基础知识,如变量,语句,基本的算法等,然后写一些小的程序,实现些常用算法对自己的思维是很好的锻炼,对以后的学习大有好处。起码要能排排序,求个八皇后,算个汉罗塔,再知道一点深、广度优先搜索。如果你已经有一些编程的基础知识了,自然就可以跳过这步。在对编程有一定的认识之后,就应该开始进军C++了。注意,C++是一门语言,而VC则是讲解如何在VC环境下使用MFC类库,学习VC应建立在充分了解C++的基础上的。
学完了C++,最好先找本Win32编程的书,Win32编程是指用Windows API编程,MFC是将众多的API函数进行了封装的类库,用起来方便了不少,但如果没有一些API编程基础,对相关概念不了解,学起来MFC来可能会很费解。API函数有2千多,不需要都学。其实只要知道如何创建窗口、对话框、控件、消息循环,了解了句柄的含义就差不多了,最好再了解一点GDI编程。这个阶段的关键是要理解Win32程序是如何运作的,把握各种窗口间的关系。因为你以后应该很少直接用Win32 SDK编写程序,所以关键是理解整个结构,记住几个函数并没有什么意义。函数用的时候可以现查。
打好了基础,现在进军VC的障碍都已经扫清了。不过还是应做好充分的思想准备,事情不会那么顺利的。刚开始你就要面对一个瓶颈,大量的紧密关联的知识,使你必须一下理解一个整体,而很难一点点来。可以说学VC最难得就是刚开始。情况有些类似于第一次创建窗口时面对的那长长的程序,很多人就是在此被它难住,放弃了学习。事实上,这几乎是Windows编程的一大特点,突破了这个瓶颈之后便是一片海阔天空,而有着扎实基础的你是一定能闯过去的。建议不要等彻底弄明白一句才看下一句,等能做出个菜单、对话框时便回头再看一遍,几遍之后应该就可以大概明白MFC程序的运作了。这里有个关键,一定要用心体会面向对象编程的精神,努力将眼前的程序与之前的知识联系起来。通过比较成员函数和对应的API函数间的区别,尝试去理解MFC是怎样封装相关的API的。例如,相当多的宏,看起来很奇怪,但你不必理会其实现方法,只要知道如何使用便可,这点也很重要。还有,对于其生成的代码要自己进行分析,偷懒就不能真正理解MFC。
这是我一个人的学习经验,但经验要因人而异,所以还需要根据个人的情况决定。开始时,教材让怎么办就怎么办,比猫画虎的做出个菜单、对话框,然后试着添加控件。等到不看教程便做出这些时,开始逐字逐句的试着理解MFC程序的组织。若看不懂就跳过看下面的。就这样一遍一遍来。如果觉着头大就先歇上2天,等清醒了再接着来,最好在这期间多找些介绍MFC框架的文章。然后便可试着写个定时器、名片夹之类的小东东,熟悉一下各种控件的使用。
突破了开始的瓶颈之后再学下去便会越学越容易,因为你可以一点一点的积累知识,而不用担心被卡着了。再过不久,你就可以使用API函数完成一些功能,如在系统托盘加图标,自画列表框等。这时,你也会体会到学习Win32编程的好处了。
最后,建议有时间的话研究一下各种算法。数据结构是一定要看的。不一定要记住,但至少要知道有那么回事,万一碰到问题可可以知道问题出在哪里。其实,常见的链表等结构以及排序等算法在C++标准模板中已经实现了,不用你去费劲,但有些了解总是有好处的。至于离散数学、线性代数什么的,对于复杂的算法是必要的,其中离散数学是数据结构的基础。
__________________
随它去吧~
值得借鉴。
不错!
__________________
站长友情提醒:由于个人能力和精力有限,请大家不要以邮件和聊天的形式提问,如有问题请在论坛提出,我们会尽快作出解答。
成功,源于无限探索...
OICQ:57535891
我在迷失黑暗中,你给我带来光明
支持,楼主应该改名叫菜鸟导航者!
嗯
__________________
愿你我双赢
8错!
好的,开始发奋了
受教…………
你不实在
这篇文章是从一本书上抄的!而且没有著明来处,说实话,我并不喜欢这本书,因为里面的程序很多都是错的,而且介绍的也太肤浅了,有些需要深入了解的东西他只粗略的说一下,这本书并不好!
__________________
JAVA? VC? .NET? J2EE?你会哪个?
哦?是真的吗?
不过,也难得他把这么多字打出来。
只要我们能从中有所收获,我就认为它好,学习知识不就是从别人那里先学来再自我提高的吗?
__________________
--------------------------------------
没有最好,只有更好
--------------------------------------
他肯定是复制的啊
不过就算是转贴嘛,没有什么的,再说了,说的很不错嘛
面向对象吗
我们不需要知道过程,只要他能给我们提供一个
通向高手之路的“接口”就行了!!!
面向对象吗
我们不需要知道这个帖子到底是怎样发到论坛上的,
只需了解它给我们提供了一个通向高手之路的“接口”。
顶
__________________
/**********************************
**努力
********努力
**************努力
********************努力
**************************VC在线
**********************************/
我不是说他转载有什么不好
我不是说他转载有什么不好,只是最起码他应该注明是转载,这样也能尊重一下原创!不应该只顾长江而忘了佗佗河!
__________________
JAVA? VC? .NET? J2EE?你会哪个?
我觉得还是有所收获的
我真的了解了东西这才实在
讲的不错
虽然卡按得保护是很明白但是也要多谢你!~
也就是说,还得先学C++才行,是不是?我可是真的菜鸟,现在还不知道如何入门。好吧。俺先看C++。可是,很需要吗?
真的很不错
真的很感谢这篇文章,不管它的原创是谁,楼主能够把它带到这里,给我们启示就very very nice了,非常非常的感谢,受益匪浅!
你是我的导航,但我的路途还很遥远,我想有了你们我不会在此迂回了
正确的学习流程
__________________
VC 痴迷者!
对新手有一定的启发
无论是抄的还是自己说的,对新手都有启发。
__________________
编程初学者
VC编程
这篇文章值得我们每个编程人看,真的不错啊!
一定加油呀
赫赫
__________________
未来总是不可知的 但需要无畏地面对
不错,值得借鉴。
首先看看windos程序设计,还是很不错的
没有好书介绍了吗?
谢谢了,不过书太多,有没有好书介绍?
i不错,受益~!
__________________
坚持
多多交游
__________________
人的智慧是快乐的源泉!!!!!!
A penny saved is a penny gained!!!
说的对,我们不必要弄清它的出处,重要的是它能给我们一条清晰的方向.
我觉得对我今后方向有所指点啊.
不错!
__________________
/**********************************
**努力
********努力
**************努力
********************努力
**************************VC在线
**********************************/
需要努力
需要 时间与不懈的努力,希望大家都能突破难关!
不管怎么样,说的有道理,我们受用了!~
不错,不错
不错
好象还不错
这要用多长时间?
如果都按他说的做了,要用多长时间啊?
对我很有用
刚开始我觉得VC很难
恩!
说得好!
我同意!
学习
我是新手,我要学习.
支持资源共享
8cuo
__________________
共同学习,共同进步!
好东东,不问出处
求助
我现在需要知道MFC中的函数的参数是怎样调用的?
各位谁知道吗?
__________________
我对VC++特别感兴趣想以各位切磋一下
为什么我做的对话框用classwizard生成不了类,有时可以有时不行
打倒日本帝国主义
各位侠客 在下有一使不明
如何在多文档窗口下取消默认打开的子窗口
__________________
谢谢各位的帮助
处理命令行时设置她
不错..从此我的世界阳光无限...谢谢..
不论怎么样,还是谢谢你了
俺是菜鸟,我爱看哦~!
西西。。。
__________________
头像 是帅哥还是美女??
不管是啥 我都
你太幽雅~!
支持一下 不过 好象在那看到过 还是 支持 至少不象我看到后没有发表出来
__________________
我很笨但我很努力
8错
__________________
surpass yourself
老实说,VC上手真的很难呀,我当初咬牙翻了不下20本书!!!简直是痛苦!!!!!!!
我们是在痛苦中成长……
很棒啊!
谢谢楼主,受益非浅
讲得有道理
大家都知道,说些有用的好吗?
好啊,,谢谢了
谢谢楼主,我正在失望中,因为我学习了4次了,都还没有学会。
我的基础是可以的,可是还是学不会,怎么办呢?
好人!
不管楼主帖子从何来,以我的经验,说的有道理!可以听取!
辛苦了
从今天开始努力学习
受益非浅!
__________________
兴趣是学习的动力!
我是现在才开始学vc的,没有学过c++,感觉是挺困难的,很多地方请多多指教!
多谢指教!
说的不错啊!
说的有道理,我也是怎么做的!
__________________
找我要的东西!
不管怎么说,好东西顶一下
值得学习
另外刚建立的一个C++群,有兴趣的来加下。
__________________
浪迹天涯
刚建立的C++群有兴趣的加下21830628!
值得学习,刚建立的C++群有兴趣的加下21830628!
__________________
浪迹天涯
努力ing~~
很有道理
good
good
不错,应该是这道理。
很好
__________________
结交朋友,
一盏明灯照我路~~
强烈同意
不错
写得不错
好的,好好借鉴
说 的 不错
顶
__________________
没啥好说的~~~
向大家多学点~~~
好帖,谢谢
呵呵
好,很受启发
__________________
多看书,多思考,多实践
很有用啊,讓我曉得了怎么樣才能把C++的基础打好!谢谢。
如果你现在要靠写VC来找饭钱的话。学习VC速度会快上10倍
怎么都没看到
大家的热心我很感动~不管如何,谢谢热心的朋友们
是个不错的建议,这样可以避免走弯路
支持
UP
楼主辛苦了
总之谢谢楼主
__________________
我是新手,什么不懂,哪位好心的高人指点指点迷津,我不懂英语却想学习C++
动手练习,是掌握知识的金科玉律,不知你有没有和我一样的深刻体会!
good
__________________
The best preparation for good work tomorrow is to do good work today!
努力学习,加强科技新技能
我看了几本教程,看完了,可以说对VC有了一定的基础,可是,我对基本编程还是有点不太懂..................还请赐教,谢谢先
值得借鉴
学习学习
顶起来
嘿嘿,我来学习学习!都很有道理啊!
__________________
路在自己脚下
UP.
Thank you very much.
谢谢
你说的太好了
全部时间均为北京时间. 现在时间是14:10 . |
Powered by: vBulletin Version 2.2.8
Translated and hacked by:
Copyright © Jelsoft Enterprises Limited 2000, 2001.