`
findmyself
  • 浏览: 21614 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

vs2003 to vs2005 发现一

阅读更多

《转的》  使用了一段时间的 Visual Studio 2005 之后,发现它的 C++ 编译器比以往更多地遵循 C++ 标准。给我印象比较深的语法变化有两个:
将代码从2003平台上移植到2005上发现一:
  1、for 循环语句中循环控制变量的有效范围更加明确

  以前我们在for语句中可以这么写:

for (int i=0; i<max; i++) {
// do something
}
if (i>0) {
// do something else
}

  这段代码中 i 是循环控制变量,循环处理完之后,在循环语句之外,i 还是一个有效变量,可以在后面的代码中继续使用它。

  在正式的 C++ 标准中,这是不允许的。

  使用新的编译器编译原有的代码时,必须作类似下面这样的修改:

int i; // move outside for loop
for (i=0; i<max; i++) {
// do something
}
if (i>0) {
// do something else
}

  2、关于常量的类型定义更加严格了,对于下面这样的常量定义,以前编译器会将之默认为 int 类型:

  const BUFLEN=255;

  但在新的编译器中,这种隐式地将没有类型声明的常量指定为整型的语法将被禁止。必须向下面这样声明类型:

  const int BUFLEN=255;

  3、除此之外,在使用 Visual Studio 2005 编写 MFC 程序时,还碰到一个小小的变化,那就是 CWnd::OnNcHitTest 的返回值原来为 UINT,现在变为 LRESULT。

分享到:
评论

相关推荐

    Visual Assist for 2005

    Visual Assist for 2005是一款专为Visual Studio 2005设计的插件,它针对.NET Framework 2.0环境,极大地提升了.NET 2003用户的编程体验。这款工具的核心价值在于其智能代码补全和导航功能,使得开发者在编写代码时...

    onvif的discovery消息格式详解

    这种模式引入了一个中间组件——Discovery Proxy (DP) 或发现代理。DP负责监听多播的探测和解析请求,并在接收到这些请求后,代替目标服务向客户端发送公告(Announcement)消息。客户端监听到DP的消息后,会自动...

    svg-to-keynote:Alfred工作流程将SVG转换为Keynote形状

    (SVG)是一种图像格式,可实现无像素缩放的无限缩放,这与JPEG和PNG等不同。 在2005年,David Astling发布了可以将SVG文件转换为Keynote形状的。 此应用程序无法在更新版本的macOS上运行(可能是由于32位),因此...

    从 .net 1.1 升级到 2.0过程中遇到的问题及解决方法

    **症状**: 当尝试在VS2005中启动调试时,会弹出错误提示:“Error while trying to run project: Unable to start debugging. 绑定句柄无效。” **原因**: 此问题通常是由“Terminal Services”服务被禁用引起的。 ...

    ONVIF Test Tool probe message format

    1. **新设备上线时**:当一个新设备连接到网络后,可以自动广播探针消息来发现其他支持ONVIF的设备,从而快速构建起整个系统的拓扑结构。 2. **系统维护时**:管理员可以定期发送探针消息来检查网络中的设备状态,...

    detour 2.1

    Supports building detours with Visual Studio 2005, Visual Studio .NET 2003, Visual Studio .NET (VC8), and Visual Studio (VC7). Detours 2.1 comes in two editions: Detours Express 2.1 is available for ...

    如何处理LINQ to SQL中的并发性?

    总之,在使用LINQ to SQL时,处理并发性是一个重要的环节,需要根据业务需求选择合适的并发控制策略。通过理解并应用上述方法,你可以确保在多用户环境中有效地管理数据的并发访问,避免数据不一致性的风险。请参考...

    粒子物理参考书目1

    Perkins的《Introduction to High Energy Physics》(第四版):世界图书出版公司2003年出版,是高能物理领域的经典教材。 7. F.E. Close的《An Introduction to Quarks and Partons》:Academic Press Inc. Ltd...

    HP服务器.pptx

    Day 0 Time To Patch 28 18 1 Day Zotob (2005) Days Sasser (2004) __ 发布补丁 HP服务器全文共22页,当前为第2页。 3 什么是〝Zero-day〞要挟? Zero-day要挟就是指曾经发现了系统或软件的破绽,但是目前没有处置...

    Duwamish7.1For C#源代码,不是安装文件

    这对于那些已经拥有Visual Studio 2005(VS2005)的程序员来说尤其有用,因为官方的Duwamish7.1安装程序需要Visual Studio 2003作为前置条件。 C#是一种面向对象的编程语言,由微软公司为.NET Framework开发,它...

    MyGeneration学习笔记.doc

    根据你的开发环境,选择合适的版本(如 .NET Framework 2003 或 2005)添加到你的解决方案中。注意,项目中的文件默认不编译,你需要手动更改 *Entity.cs 和 *DynamicQuery.cs 文件的生成操作属性为“编译”,以便...

    MSbuild使用MSBuild实现完整daily_build流程

    这一过程有助于尽早发现集成问题,并确保代码质量。MSBuild在实现Daily Build流程中扮演着重要角色,它可以: 1. **读取并理解** .csproj 文件,控制编译器生成整个解决方案。 2. **提供定制化** 的构建脚本,允许...

    计算机应用技术(实用手册)

    第一章COMS的设置 1 1.STANDARD CMOS SETUP(标准CMOS设定)用来设定日期、时间、软硬盘规格、工作类类型。 3 2.BIOS能功设定 5 3.Advanced Chipset Features(芯片组设定) 6 4.Integrated Peripherals(集成...

    共沉淀-超声法快速制备CaZr4 ( P04)6及其生物活性评价 (2009年)

    1. **相变特性**:通过TG-DTA分析发现,CZP在加热过程中发生了明显的相变现象。这些变化与样品中水分的蒸发以及有机物的分解有关。 2. **相组成与晶体结构**:XRD结果显示,CZP主要由单相构成,且随着热处理温度的...

    中文版RFC,共456

    RFC1 主机软件 RFC2 主机软件 RFC3 文档规范 RFC4 网络时间表 RFC6 与 Bob Kahn 会话 RFC10 文档规范 RFC13 零文本长度的EOF信息 RFC16 M.I.T RFC18 IMP-IMP和主机-主机控制联接 RFC19 可用来降低有限交换节点阻塞的...

    RFC中文文档-txt

    RFC1 主机软件 RFC2 主机软件 RFC3 文档规范 RFC4 网络时间表 RFC6 与 Bob Kahn 会话 RFC10 文档规范 RFC13 零文本长度的EOF信息 RFC16 M.I.T RFC18 IMP-IMP和主机-主机控制联接 RFC19_可用来降低有限交换节点阻塞的...

    rfc中文文档目录,包含部分翻译

    RFC2005 IP移动性的适用性陈述 RFC2011 SNMPv2 管理信息基础用于Internet 协议使用SMIv2 RFC2012 SNMPv2 管理信息基础 用于传输控制协议使用SMIv2 RFC2013 有关采用SMIv2用户数据报协议的SNMPv2管理信息数据库 ...

    在WCF中启用事务的6个步骤

    1. **创建服务合同**:首先,你需要定义一个服务合同,该合同声明服务操作是否支持事务。使用`[ServiceContract]`和`[OperationContract]`特性来定义服务接口,并使用`[OperationBehavior]`特性设置`...

Global site tag (gtag.js) - Google Analytics