Vc6.0学习手记(50分)

  • 主题发起人 主题发起人 fengxiaoxiao
  • 开始时间 开始时间
F

fengxiaoxiao

Unregistered / Unconfirmed
GUEST, unregistred user!
用delphi找不到工作,开始k vc。还请大家多多指点。
Vc6.0学习手记
昨天买了vc6.0的光盘.安装好开始学习.
果然在vc5.0下不能运行的例程现在开始可以运行了.
但是发现vc确实非常不好上手.主要是对其操作上不够清楚.虽然例程上的代码就在那里,但是不清楚是通过怎样的操作添加上的.
看样子还应该退一步,找一找更基本更初级的看一看.
2001/12/7
买了《visual c++编程高手》。书不错。
下午试了试,感觉还不错。
试了”hello,world”,感觉这种控制台下的程序和dos下的十分相近。但是,还不
知道如何通过编译的错误信息找到错误。因为写错了一个字符,竟用了许多时间
来查找。
2001/12/8
上午,试了试mfc的第一个程序:MyFirst。要写的代码不多,主要是在类
MyFirstView中添加几句代码。一次就编译运行通过了。竟然象画笔一样,感觉真
是很好。只是不象书中写的那样可以保存文件。
下一章是使用控件。遇到一些麻烦,要添加成员函数代码的时候才发现,此成员
函数的名称在书上所说的类中不存在,而在另一个类中有,不知是怎麽弄的。
下午,看了看随书附带的光盘。发现vc和delphi有许多地方是相似的。比如:vc
中的fileview中的文件类型:source files,header files和resource files中
对应着delphi的pas文件和dfm文件。其中vc.source files + vc.header files =
Delphi.pas,而vc.resource files = Delphi.dfm。但是区别是更大:用delphi
编程不用懂太多的windows的知识,而vc恰恰相反,如果不了解微软对windows做
的规定,简直寸步难行。而且看着头文件中那一长串数字,看着灰色的以afx开头
定义的消息或其他,简直又崇拜又糊涂。
2001/12/9

 
这就是血浓于水的道理
 
呵呵,怎么对D那么没信心呀?不过C确实不错。[:D]
 
很有意思,其他富翁也来谈谈delphi
转vc时的感受
另外,有多少是先学delhi,再学vc的?
 
阿拉 不学C/C++ 只是像征性地看看
 
VC++真难。
 
>>用delphi找不到工作,开始k vc。
这要看你的水平啦,如果三心两意, VC你再k一年大概也找不工作。
 
我觉得学了Delphi再学VC, 往往会觉得很难.
而学了VC再学Delphi, 却常常如虎添翼.
我VC不熟, 不知朋友们怎么看.
但如果说用Delphi找不到工作, 未免有失偏颇. 可能是风小弟水平不到家吧.
 
不可能 哪里有学精通了DELPHI 找不到工作的!
 
没有重点地试例程,天马行空般地看光盘上的例程。感到vc特别散碎,明明是一个类,
却要把它分割开,.h中放一部分,.cpp中又放一部分。而且不直观,有许多地方必须
用键盘录入,既慢又有可能出错:比如要包含其他文件时。Delphi就作的好,对象很
直观,就在那个文件中,成员变量成员函数一目了然;要包含文件,用Alt+F11就可以
选择。而且特别讨厌vc的菜单,用它点菜我就只能吃凉的了
 
用delphi编程不用懂太多的windows的知识绝对是个误解,应该说拼装现成的控件不用懂太多的
windows的知识才是实话.
个人认为C++与Delphi中区别较大且不容易转弯的是类的构造方法,在Delphi中所有实例都是指针,
而c++里则不是.C++中于控件关联的变量也显得比较罗嗦.消息映射也挺烦的.
 
学会了DELPHI,去看VC的时候,如云里雾里,看不明白
后来学了SDK,再看VC,也就那么回事。。
 
我也谈谈:
我个人觉得在VC当中对消息的处理比在delphi中更形象,他有DefWindowProc函数等等。
在delphi当中需要自己添加这个自己不知道的函数。
delphi当中这个form和另一个form的控件付值可以直接,VC不能。
…………
VC更低级一些!
 
思考中、、、
 
我说过一段时间VC++6.0,简直是太难了,完全要靠手写,不累死才怪呢?
 
感到有必要再看看windows的基础知识:
事件、消息及消息循环相对比较好理解。事件主要有三种产生方式:
1. 输入设备:鼠标和键盘
2. 屏幕上的可视对象:窗口,菜单,工具条。
3. Windows系统自己产生的。
消息是windows对事件的描述,其结构如下:
typedef struct tagMSG {
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
DWORD time;
POINT pt;
} MSG, *PMSG;
这是在msdn光盘上找到的,不过以前不知道还有后两项(dword time;point pt)。其中
hwnd表示要接受消息的窗口对象;message是具体的消息类型(从传递方式分为queue和
nonqueue);wparam和lparam是根据消息类型添加的消息参数。
当每产生一个事件时,windows都会自动将其转为对应的消息并发送给相应的应用程序,
此消息参加应用程序的消息循环(消息循环就是一个循环语句,由三条语句组成:第一条
是取得消息并判断是否是WM_QUIT,若是,则结束应用程序,不是的话执行第二条语句;
TranslateMessage(&Msg)判断是否是键盘消息,是的话转为WM_CHAR消息,它不处理键盘
消息;第三条语句DispatchMessage(&Msg)将消息传递给相应的窗口),等待被处理。应
用程序中会有消息处理函数来对收到的消息进行处理,如果程序员不对此消息进行处理的
话,windows使用缺省的处理方法进行处理。
整个windows基本上就是这样周而复始地运行着。
(请问:当你双击屏幕上的一个应用程序图标,windows会如何处理而将应用程序打开)。
windows是基于图形界面的操作系统,而一个窗口是如何在windows中显示的呢?其中,你
应该先了解窗口是如何组成的(不好意思,手头只有两本书,msdn上也没找到),窗口被
显示到界面后,如果更新,则由windows完成窗口框架的绘制,而由程序员完成窗口客户区
的绘制。客户区对应着一个设备环境(DC),通过windows返回的句柄进行访问,
DC.line(point1,point2)就是在客户区上画一条线。而负责设备环境和绘制的函数被称为
图形设备接口(GDI).
2001/12/11
 
>>fengxiaoxiao
支持、、、
我也在进行C + +,选择VC++6.0作为工具;
 
后退
顶部