VS6.0和VS2005开发C++时,二者的编译器之间令人不习惯的不同
来源:互联网 发布:淘宝主持怎么判刑新闻 编辑:程序博客网 时间:2024/05/16 17:27
http://hi.baidu.com/xzbmask/item/5885a940612bcde3bcf4511c
本来用VC++6.0(以下简称VC)一直用得很舒服,但是因为工作原因,需要转到VS2005(以下简称VS),所以开始学用。结果,VS的编译器让我无数次翻开百度(大家都明白,百度点击率又一次加了起来)。现在当做笔记把它们记下来,也跟像我一样的初学者分享。
1. 字符串的输入/输出:
VC直接用""(双引号)引起来就可以了,VS就复杂了,得用_T(""),几乎大部分的错误都是因为这个习惯没改过来。
2. CString和int间的转化:
(1)CString转int:VC中,用atoi();VS就不得了,用这个会提示
error C2664: 'atoi' : cannot convert parameter 1 from 'CString' to 'const char *' d:\c++.net\xxjcdgxt\xxjcdgxt\sell.cpp
得用_ttoi()才能转化;
(2)int转CString:这个没变,都用CString类的format函数就可以了。例子:
CString s;
int a=5;
s.Format("%d",a); //VS中要写成s.Format(_T("%d"),a);
于是,s就成为a的字符串形式了
3. 使用CFile类对象读取文件:
在VC 6.0及之前,CFile类对象读取超过64K的文件需要用到ReadHuge函数,小于64K就直接用Read。
在VC 7.0及之后,取消了ReadHuge这个函数,不论文件多大,都直接用Read就可以了。
4. 使用iosteam中的成员和方法
VS6.0中,直接用#include <iostream.h>即可。
而VS2005中#include <iostream.h>会直接报错,无法引用iostream.h,因为公用头文件的文件夹里没有iostream.h文件!而代替的是iostream(注意没有扩展名),猜想这大概是区别基础头文件和扩展头文件的命名方式。但是#include <iostream>后,还是不能使用cout,cin之类的方法。这时,还得using namespace std!至于理由,我实在是猜不出了……
先这么多了,慢慢加
- VS6.0和VS2005开发C++时,二者的编译器之间令人不习惯的不同
- VC6.0和VS2005编译器的区别
- 编译器一:程序设计语言、编译器和开发环境之间的关系
- C和C++之间的不同
- 在VS6.0和VS2005中配置berkeleyDB环境
- 在vs6.0和vs2005中安装STLPort
- 在vs6.0和vs2005中安装STLPort
- 谈谈程序设计语言、编译器和开发环境之间的关系(转)
- 谈谈程序设计语言、编译器和开发环境之间的关系
- 谈谈程序设计语言、编译器和开发环境之间的关系
- 谈谈程序设计语言、编译器和开发环境之间的关系
- 不习惯的生活
- 发现VC编译器和gcc编译器的一点不同
- 奇怪的VS2005编译器问题
- [ --> C Language<-- ] 不同的C编译器差别够大的
- vector有reserve何resize,二者的不同?
- 为什么有了互斥锁还要条件变量(二者的不同)
- 使用Lex和Yacc开发C语言的编译器
- 更靠谱一点的编程语言排行榜
- Android窗口管理
- QQ代码
- xcode的其他功能
- 什么是.NET应用程序框架
- VS6.0和VS2005开发C++时,二者的编译器之间令人不习惯的不同
- .NET Framework想要实现的功能
- 面包屑导航之一
- Java序列化的机制和原理
- mysql 外键关联限制
- interface/class 的 Nonmutating 和 Idempotent
- 黑马程序员_java之System,Runtime,Math类
- VMware Workstation 9安装MAC OS 10.8全程图解
- 在Windows下使用OpenCL