王朝网络
分享
 
 
 

Visual C++.net与Visual C++6.0使用之差别

王朝vc·作者佚名  2006-01-08
宽屏版  字体: |||超大  

Visual C++.net与Visual C++6.0使用之差别

2002年2月13日,微软公司发布了具有历史意义的Microsoft Visual Studio.net,这给全世界的软件开发人员打了一针强心剂,一个历史上最为强大的开发工具诞生了!但是人们在高兴的同时,也产生了一些小麻烦,因为微软新的产品与以前的版本在使用上有所不同,有些地方甚至还有很大的差异,我也是一个使用微软开发工具的软件开发人员,下面就我个人的体验来为大家解一些疑排一些惑,有些还不够全面。

我以Microsoft Visual C++.net为例,来说一说我发现的与Microsoft Visual C++6.0的不同之处。

下面给你一个Microsoft Visual C++.net的工作空间(workspace)的总体印象,见下图(这也是我最喜欢的自定义形式,我用的是Windows2000Server+Microsoft

Visual Studio.net Enterprise Archtect Edition)

明显可以看出与6.0的不同之处,从第一感受来说是更漂亮了,我相信大多数人都会同意我的看法的,对吧^_^….

但我们要看到实质的变化,就要对比一下这两个版本。我们以一个SDI应用程序Test为例,来看一看他们的区别,好吧正式开始!

(1) 首先看看目录文件架构的不同:(vc.net的默认安装目录为:…\ Microsoft Visual Studio .NET;而vc6.0默认安装目录为:…\Microsoft Visual Studio)

vc.net目录下的文件目录数比vc6.0的要多出一些,但主要的目录也大体上相同。只是原来的common变为了common7,vc98变为了vc7;我们主要看一下

vc7和vc98下的文件有什么不同;vc.net的前几个文件目录(包括:bin,include,lib,crt,atlmfc)与vc6.0基本相同,不同的是vc.net将atl和mfc合并为一个目录atlmfc,原来的mfc源代码可以在atlmfc\src\mfc中找到。

而vc7中的其他新增的文件目录则估计是微软细分功能的产物。我们暂不去考虑。

(2)配置应用程序使用环境:由于vs.net集成了vc++,vb,vc#等多种开发工具而且提供了多种配置方案,对于vc开发人员,推荐使用“vc++开发人员”配置。

(3)MFC应用程序向导差异:当分别在vc.net 和vc6.0用MFC应用程序向导创建新工程Test时,你就会发现MFC应用程序向导在两个版本中稍有不同。首先在

向导的样式上,vc.net使用的是嵌入浏览器模式而vc6.0使用的是对话框模式,而且vc.net在应用程序类型选项中提供了“多顶级文档”的方案和更加明显的

“用户界面功能”选项。

(4) 应用程序向导产生的各种文件的差异:下面列出两个版本中的功能对应的文件

vc.net

vc6.0

xx.sln(visual studio solution )

xx.dsw(developer studio workspace)

xx.vcpj(visual studio project)

xx.dsp(developer studio project)

其他文件基本相同,但vc.net中已经不存在xx.clw(class wizard)文件了,但多了一个xx.aps文件和一个xx.manifest文件(在res文件夹中)。

(5)stdafx.h文件的不同:在vc.net生成的文件中stdafx.h文件变化最大,众所周知stdafx.h以及stdafx.cpp是为了产生预编译块xx.pch,下面是Test项目中stdafx.h文件的源代码:

// stdafx.h : 标准系统包含文件的包含文件,

// 或是经常使用但不常更改的

// 项目特定的包含文件

#pragma once

#ifndef VC_EXTRALEAN

#define VC_EXTRALEAN // 从 Windows 标头中排除不常使用的资料

#endif

// 如果您必须使用下列所指定的平台之前的平台,则修改下面的定义。

// 有关不同平台的相应值的最新信息,请参考 MSDN。

#ifndef WINVER // 允许使用 Windows 95 和 Windows NT 4 或更高版本的特定功能。

#define WINVER 0x0400 //为 Windows98 和 Windows 2000 及更新版本改变为适当的值。

#endif

#ifndef _WIN32_WINNT // 允许使用 Windows NT 4 或更高版本的特定功能。

#define _WIN32_WINNT 0x0400 //为 Windows98 和 Windows 2000 及更新版本改变为适当的值。

#endif

#ifndef _WIN32_WINDOWS // 允许使用 Windows 98 或更高版本的特定功能。

#define _WIN32_WINDOWS 0x0410 //为 Windows Me 及更新版本改变为适当的值。

#endif

#ifndef _WIN32_IE // 允许使用 IE 4.0 或更高版本的特定功能。

#define _WIN32_IE 0x0400 //为 IE 5.0 及更新版本改变为适当的值。

#endif

#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // 某些 CString 构造函数将是显式的

// 关闭 MFC 对某些常见但经常被安全忽略的警告消息的隐藏

#define _AFX_ALL_WARNINGS

#include <afxwin.h> // MFC 核心和标准组件

#include <afxext.h> // MFC 扩展

#include <afxole.h> // MFC OLE 类

#include <afxodlgs.h> // MFC OLE 对话框类

#include <afxdisp.h> // MFC 自动化类

#include <afxdtctl.h> // Internet Explorer 4 公共控件的 MFC 支持

#ifndef _AFX_NO_AFXCMN_SUPPORT

#include <afxcmn.h> // Windows 公共控件的 MFC 支持

#endif // _AFX_NO_AFXCMN_SUPPORT

#include <afxrich.h> // MFC Rich Edit 类

更不同的是vc.net每个头文件中的类似如下的东东:

#if !defined(AFX_STDAFX_H__69597228_DA85_4F3B_81F6_E4E0A168D780__INCLUDED_)

#define AFX_STDAFX_H__69597228_DA85_4F3B_81F6_E4E0A168D780__INCLUDED_

不见了,真想不懂微软为什么不用file guarder,那它是如何防止同一个头文件被重复包含的,嗨?

(5)classwizard的有无:当你第一次使用vc.net时,你会惊讶的发现classwizard不见了,你会大喊“微软你太过分了。”但是如果你继续发掘的话你会发现其实

classwizard不见了又如何,微软提供的替代它的功能甚至超过了它,这些功能很分散,这里不便详述,还是你自己去发掘吧!

(6)项目方案配置. 项目工程的配置和项目目录设置:

vc.net中的项目方案配置和项目工程的配置都可以在“解决方案资源管理器”(solution explorer)中完成:(以Test为例)

项目方案配置方法:单击“解决方案资源管理器”中的“解决方案Test”,然后

在右键菜单中选择“属性”即可配置。

项目工程的配置方法:单击“解决方案资源管理器”中的“Test”,然后

在右键菜单中选择“属性”即可配置。

项目目录设置方法:选择 “工具”菜单------“选项”,弹出“选项”对话框

在“项目”中即可配置。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
>>返回首页<<
推荐阅读
 
 
频道精选
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有