好多人在学习可视化编程的时候,只注重界面设计,并不重视流程控制,功能实现,内部机制等.结果是学了VB忘了C,学了VC忘了C++,其实我认为后者才是最重要的.它是衡量一个人程序设计能力的标准.陈建春在有本书上写的蛮好:

"程序设计者特别是初学者应该认识到,程序设计的最终目的是为了完成具体的任务,所以在应用程序设计中,程序的框架和界面等部分在一个程序中占的比重是最小的,并非程序设计的本质.

程序设计的能力体现在对数据的组织和控制,流程的控制等上面,不同的计算机语言虽然各有特点,但是几乎所有的计算机语言其设计思想是内在相通的,程序设计能力的高低与采用哪种计算机语言没有必然的联系"

1.必须在真正掌握程序的框架构造基础上使用工具

使用这些工具必须首先深刻理解程序的框架构造和这些工具的真正作用.初学者应该花费大量的精力弄懂MFC程 序框架的组成结构,这样才能够游刃有余的控制程序.最不可取的是盲目使用它.具体的说,程序设计者只有在用手工能够熟练的完成工具所能自动完成的任务的前 提下,再使用这些辅助编程工具(比如CLASSWIZARD,resourceview,classview).使用这些工具的目的是提高书写代码的效 率,提高编程程序的速度,而不是用来代替程序设计

2.正确把握程序设计的要点

程序设计的能力体现在对数据的组织和控制.流程的控制上面,不同的计算机语言虽然各有特点,但是几乎所有的计算机语 言其设计思想都是内在相通的.程序设计的能力的高低与采用哪中计算机语言没有必然的联系.现在计算机语言书籍多数集中在介绍各种语言的操作功能,缺少对读 者进行程序设计实际能力的培养,给初学者造成一些错误的导向,比如盲目的追求语言版本.似乎只要用的语言版本越新,自己进行程序设计的能力就越强.结果 是,一些学习程序设计的人,计算机语言的基础知识不牢固,对程序设计的基本思想和方法不明晰,对新出现的一些编程工具本质不了解,所以在进行具体任务的设 计时盲目性很大,往往事倍功半,越搞越糊涂.所以用计算机语言进行程序设计,期望具有很高的程序设计能力,并不在于学了多少语句,函数,对象和方法,关键 是要有明确的设计思路,把具体任务与程序的创建,编码,使用辅助编程工具等联系起来,对数据和流程进行组织和控制

1。C/C++语法要全面,在学VC时要不断回头看看C/C++语法,因为VCMFC编程充分利用了C/C++方方面面特性,如果对C/C++某方面一知半解都有可能成为你理解上的拦路虎。

2。学习顺序安排如下:
C/C++  
-> Win32SDK程序主框架及与Windows相关API编程 
-> 理解MFC 对话框框架并在此框架下学习编程  
->  专门花时间学习CObject及其相关特性(如运行类识别,动态创建、持久化等等的知识)
->理解单文档框架程序流程并在此框架下学习编程 
->理解多文档框架程序流程并在此框架下学习编程
->动态链接库技术
->多线程技术->。。。
3。在学习如上知识的同时还要同步学习和研究程序总体架构设计方面的技巧知识。

4。每一个阶段结束时都应专心完成一个小而完整的软件来,作为这个阶段的总结。这不仅仅学会如何应用所学的语法和局部的知识,还会学会如何从全局架构上去设计,而这一点才会成为我们真正的障碍

vc编程经验

1.对classview中的类进行整理
经常做大项目的时候会设计很多的类,很容易弄混,查找也很麻烦。可以在classview中右击新建文件夹,
把性质类似的类拖到文件夹中
应用指数:★★★
成功率:100%

2.快速删除DEBUG文件夹中的临时文件
在fileview中选中标题(..files),右击,“清除(仅选定的)”
应用指数:★★★★
成功率:100%

3.如何干净的删除一个类
  首先在fileview下删除对应的头文件和源文件(此时并不是物理删除)
  然后从实际的文件夹中物理删除对应的头文件和源文件
  删除.clw,重新打开即可
应用指数:★★★★
成功率:100%

4.明明添加了一个类,却找不到了
直接删除.clw,重新编译即可
应用指数:★★★
成功率:100%

5.再次打开一个项目时,编译一次报错,错误是不能打开stdafx.h
此时可以删除debug下的所有obj文件
应用指数:★★★★
成功率:90%

6.在编写代码时,发现成员函数和变量的智能提示不能自动弹出来
关掉项目,删除.clw和 .ncb文件
应用指数:★★★★★
成功率:100%

7.如果把所要包含的头文件写在 include "stdafx.h"前面不起作用

把所要包含的头文件语句写在 include "stdafx.h"的后面或者直接写在stdafx.h中
应用指数:★★★
成功率:100%

8.如果你要和别人共享源代码,没有必要把文件夹下的所有文件拷贝。你可以删除一下文件:
.dsw,.ncb,.opt,.clw,.aps,.clw,.plg以及debug、release下的所有文件
应用指数:★★★★
成功率:100%

9.在有些书上会介绍一下菜单或者资源模板的知识,如果想看代码的话,可以找到.rc文件
,改成txt,打开即可
应用指数:★★★★
成功率:100%

10.请在运行程序的时候关闭卡巴,这样好一点,防止冲突。

应用指数:★★★★
成功率:80%

11.如果Build以后,在调试框中到了linking就不动了,那么只好先保存一下,然后在任务管理器中关闭,最后重新打开项目

应用指数:★★★★
成功率:100%

12.可以在一个工作空间中设置2个工程,并且互不干扰。方法是:在工作区,切换到FileView下,选中根节点,右击,选择“添加新工程到工作空间”,然后新建工程即可。

如果要切换运行或者调试的话,只用右击工程,选择“设为活动工程”

应用指数:★★★★
成功率:100%

13.如果要查看某个变量或者常数的定义,把光标定在其中,然后右击选择“转到定义”,

即可。如果要查看某个基类函数的话,如CView::OnDraw() 就用下面的方法:

在菜单兰中,“编辑”,“在文件中查找”,注意设定文件路径为安装目录。

应用指数:★★★★
成功率:100%

14."ctrl+]"  组合键的使用可以帮助你快速检测出括号的配准情况。首先定位光标于

第一个括号前面,然后按下组合键,系统会自动马上找到匹配的括号,并将光标定位

于那里。否则保持不动。

应用指数:★★★★
成功率:80%

15.有时候,你想添加一个系统消息时却发现找不到,,比如是窗口消息,但在一个基于对话框的程序中却找不到。很是烦人。有办法。打开"类向导"

以后,切换到"class Info"选项卡下,在"Message Filter"列表框下选择window,而不是dialog或者其他什么就可以了。

应用指数:★★★★
成功率:80%

16.长久看了VC工作区,眼睛会疲劳,可以试着更改一下设置。方法是菜单栏   -- 工具 -- 选项,切换到"格式"选项卡即可。可以更换

字体,颜色等。

应用指数:★★★★
成功率:100%

17. 写了很多代码,然后更改,最后会发现代码一团糟,格式也不正确,看起来也不美观。有个简单的方法就是 alt+F8,只要选中要整理

的代码,然后按键,即可。

应用指数:★★★★★
成功率:100%

18.如果工作空间中有2个工程,那么每次运行一个的时候,必须设置它为活动工程(方法不在阐述)。这样很麻烦。有种简单的方法是:

右击打开“组建”工具栏,可以看见小的横杆(组合框),里面就 可以设置活动工程。

应用指数:★★★★★
成功率:100%

19.每次用”class wizard”来添加消息有点大材小用了,还有种简单的方法:

右击打开“向导条”工具栏(wizardBar),设置类和要处理的消息。

应用指数:★★★★★
成功率:100%

编程该学什么以及vc++一些心得相关推荐

  1. java编程难学吗?

    java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大和简单易用两个特征.Java语言作为静态面向对象编程语言的代表 ...

  2. 轻松学编程--轻松学Oracle数据库(附光盘)

    查看书籍详细信息: 轻松学编程--轻松学Oracle数据库(附光盘) 编辑推荐 <轻松学Oracle数据库>本书中引用了大量的动手实践案例来讲解Oracle数据库中的各种知识,使读者能够更 ...

  3. java方法重载编程_学java教程之普通方法重载

    学编程吧学java教程之普通方法重载发布了,欢迎通过xuebiancheng8.com来访问 先来看什么是普通方法重载呢,先来看一个例子 public class Person{ String use ...

  4. c+和python先学哪个比较好-【编程先学什么好,c还是python】python教程c

    编程先学什么好,c还是python 我和楼上的看法差不看个人偏好,其实各势. c的底层,学c的话,能了解一些基本的概念,编译.指针.内存管理等概念.但是由于偏底层,初学者去开发有意思的应用程序难度就比 ...

  5. 学习Unix/Linux编程要学些什么

    最近利用空余时间看了一下<Unix/Linux编程实践教程>,原书名为:Understanding Unix/Linux Programming: A Guide to Theory an ...

  6. 别为了学编程而学编程

    "所有人都应该学习编程"(Everyone should learn programming)--这个"病毒"已经广为扩展,达到了失控的地步,以致于纽约市长竟然 ...

  7. 编程小白学python知乎周刊_在知乎上学 Python - 入门篇

    写在前面 本文对知乎上关于Python入门方面的问答.文章.专栏做了一定的收集和整理,希望对各位Python学习者能有帮助,至少可以节省大家一点时间. 这一篇主要针对的是零基础或初学Python,包括 ...

  8. Win32编程之基于MATLAB与VC交互的多项式回归

    运行环境 Matlab R2018b x64 or x32 Visual Studio 2017 企业版 程序预览 文末有完整程序代码下载地址,有任何问题欢迎留言,谢谢点赞哟! 程序功能描述 矩阵运算 ...

  9. 轻松学c语言编程.pdf等,轻松学编程 轻松学C语言编程pdf

    轻松学编程 轻松学C语言编程 内容简介 <轻松学编程:轻松学C语言编程>从初学者的角度出发,以通俗易懂的语言.丰富多彩的实例,详细介绍了使用C语言进行程序开发应该掌握的各方面知识.全书共1 ...

最新文章

  1. 求单链表的最大值与原地逆转_江西师范大学硕士学位研究生入学考试数据结构试题(2003年)一.doc...
  2. 蓝牙连接不上车要hfp_蓝牙耳机的音质由什么因素决定?价格高的蓝牙耳机音质一定好吗?...
  3. 利用大数据和分析来发展业务,您准备好了吗?
  4. sqlite mysql pgsql_SQLite 、MySQL 与PostgreSQL三个关系型数据库的比较
  5. Photoshop显示RGB值问题
  6. qml-创建可移动的模态弹出框
  7. 线段树-Pudding Monster CF526F-单调栈
  8. Ubuntu 14.04 16.04 安装最新的 docker
  9. 串口 多个activity 安卓_一个Activity实时向另一个Activity发送消息
  10. 解决SQL Server 2005 Express中无法连接到服务器问题
  11. (03)FPGA与CPLD区别
  12. GCF(2)---GCF中LAUNCH BROWSER测项注意事项
  13. django怎么在html添加变量,如何在django项目的html模板中创建局部变量?
  14. Android启动的init进程
  15. IOS之拨打电话的三种方式
  16. 罗技鼠标显示无法连接服务器,罗技无线鼠标接收器无法配对的详细解决办法
  17. 前端 express使用教程
  18. 牛市来了,我劝读者不要炒股他却骂我不地道...
  19. 产品经理——关于色彩搭配!!
  20. 计算机及软件工程专业基础综合,2017年东华大学854计算机及软件工程专业基础综合硕士研究生入学考试大纲...

热门文章

  1. 一个matlab可视化的结果
  2. UltraEdit 19.10版本花括号自动缩进两空格的解决方法
  3. linux下write()和read()函数详解
  4. Unity3D的Json篇:LitJson.dll插件
  5. CSRF 的攻击过程
  6. (转)项目管理经验分享 - 项目经理的核心竞争力
  7. 安装Linux Mint 18.2后要做的20件事
  8. 《桃花源记》古文鉴赏
  9. 手把手搭建SSM框架
  10. PCB布线技巧(全)