-G0S@(U([!n0 2007年11月,微软发布了Visual Studio 2008 RTM版,在发布之前,既没有在网站首页醒目位置打上相关标识,也没有在现实
生活中进行相关宣传,仅在下载中心给出其90天试用版的下载链接,显得十分低调,有关的宣传活动,恐怕要等到2008年2月份发布Windows
Server 2008时一同进行吧。此次Visual Studio 2008为英文版,想用简体中文版的朋友可能也要等到明年2月份才有机会一睹庐山真面目了。那么,这次发布的Visual C++ 2008与以往有什么不同吗,会不会像Visual C++ 2005一样让全世界的C++爱好者兴奋不已呢,下面一一道来。
hD4z0a"~7RKe"{
a4h0$HBDZ:Y,W)H;b,?0Visual C++集成开发环境的变化
%T5o%yG@W?$c%d0
[B H|z?B B,E0 1、在ATL、MFC及Win32应用程序中创建的对话框现在已符合Windows Vista样式标准了。使用Visual C++ 2008创建的新工程中所有对话框现在都会符合Vista窗口样式,但如果编译一个早期Visual C++版本创建的工程,对话框仍会保持原有的窗口样式。
ITPUB个人空间0VY4q.`w*OD~4vITPUB个人空间
p"^H~Mo/SjZ+g 2、在ATL工程向导中,可选择为所有用户注册组件。从Visual Studio 2008开始,由ATL工程向导创建的COM组件与类型库,如未选择为所有用户注册,默认将注册在HKEY_CURRENT_USER中。
8QD)g%lbb0A/H0PYZ]A@NR0 3、注册表写入能被重定向。随着Vista而来的安全性要求,如果程序想写入到注册表的某特定区域,需要以权限提升模式运行,那总不可能总是以提升模式运行Visual Studio吧,所以,对注册表HKEY_CLASSES_ROOT区域的写入将自动重定向到HKEY_CURRENT_USER,而不需要进行任何编程。
!dt+b7z.a(V
b"mDq$Tw0ITPUB个人空间7zYXc| 4、类设计器现在可提供对本机C++代码的有限支持。在Visual Studio的早期版本中,类设计器仅能用于Visual C#和Visual Basic,现在,C++程序员也能使用类设计器了,但只限于只读模式。
ITPUB个人空间+l+S"oI#T6f"c
Iu,^6it)e k-Z$gk0Visual C++库的变化
TI^7UMd"D8h0ITPUB个人空间~
D5ZOSG 1、STL/CLR库。编写托管代码的程序员是不是又该高兴了,现在Visual C++已包含了STL/CLR库(即之前的STL.NET,STL.NET为当时把STL移植到 .NET平台的项目代号)。STL/CLR库是对标准模板库(STL)的封装,其是标准C++库的一个子集,STL/CLR结合了C++模板与 .NET的泛型
概念,允许C++程序员在STL容器与算法中使用 .NET类型。现在,STL中的容器类(container)、迭代子(iterator)、算法等等,还不是照样信手拈来。
ITPUB个人空间g kS ]$DIEgl(sBITPUB个人空间vO?
LS;A 2、MFC库。新的MFC9提供了支持Windows Vista的通用控件,新增了超过150个方法用于支持Vista的新特性及改进现有MFC类的功能,如新的CNetAddressCtrl类可用于输入及验证IPv4及IPv6地址或DNS名、新的CPagerCtrl类可简化选项卡控件的使用、新的CSplitButton类可简化SplitButton控件的使用。
1`k^
On9rV0 ITPUB个人空间E4olV&D8[8`*Y@ 另外,不得不提的是,微软计划在2008年年中的某个时间,发布对MFC库的一个重大更新,可使程序员构造具有超现代用户界面的程序,如类似Office 2007 Ribbon、Office样式菜单、Visual Studio样式的停靠工具栏、MDI程序中的多选项卡文档,此次更新的组件在Windows 2000以上的操作系统均可运行,如下图所示。
3H|Jy`.`'L,~0
ITPUB个人空间F.UT"PULZITPUB个人空间A#{f'qA链接器的变化ITPUB个人空间i.Q Q!Z%i.Lr
T7rW ITPUB个人空间#}g,Se4^~0S'S6yX#]bv 用户账户控制现在已嵌入在可执行文件的清单文件中。这个功能默认是打开的,如图所示。
d:l6P:}+r1}8s+E0ITPUB个人空间j#Nr
A!w~
ITPUB个人空间 x G e~C-CITPUB个人空间W3~;H,O*A3X 链接器现在可使用/DYNAMICBASE选项以打开Windows Vista上的地址空间随机排列(Address Space Layout Randomization)功能。这个选项修改了可执行文件头,以表明程序在加载时,是否可以随机重新定位基址。
ITPUB个人空间3\QY!mV2t8@yEn.VITPUB个人空间-t4yfjC,jG iRa 当然在链接选项中,也少不了数据执行保护(DEP)。
ITPUB个人空间8p-gH+[iu!a WA
pqpxOS0 Visual C++ 2008的发布,无疑把C++这种开发语言又推到了一个新的高度,从底层系统驱动开发到高层 .NET编程,都不在话下,而且在功能性、安全性、易用性上有了显著的进步,将来,随着C++0x标准的临近及ISO 2003标准C++库的普及,Visual C++必定又有一片新的天地,作为程序员的你,还等什么呢。
9Lg'@^:eYp!m:Rw0$Bdb(~B]v k0{I+n@(h
VHg.x0:k:o
CbMY&ZzT0