1. 不支持 C99

Visual C++ 6.0 已经是 1998 的老产品了(历史总是惊人的巧合,1999 年就发布了 C99 版本……真是不走运哈。)


C99 有多方便呢?举个例子

 

for (int i = 0;i < 10; i++)     printf("*");

 

嗯 相信这段代码大家都很熟悉,就是打印 10 个星号而已。

 

但是这段代码在 VC 6.0 中会报错,因为 C89 不支持啊!在 for 中可以定义变量这种用法是在 C99 才出现的。

 

2. 兼容性极差

大家可以去这里去看看,其实 VC 6.0 的设计版本不是 Win7,不是 Vista,也不是 XP。

 

 

啊!我的天哪……这个东西可真的算是老古董了。


而且还会出现各种各样的问题:


Microsoft Visual C++ 6.0 对 windows7 和 windows8 的兼容性较差。在 Windows7 使用 VC6.0 只需要忽略兼容性提示即可正常使用, [4]  但是在 Windows8(含 Windows8.1)使用 VC6.0 则需要改原 MSDEV.EXE 文件名并改兼容性才能正常使用。[5]  在 Windows10 的第一个版本也可以正常使用 VC6.0,但 Windows10 系统升级更新后中文版 VC6.0 无法正常使用,提示“0xc0000142”的错误,需要将原 MSDEV.EXE 文件替换为英文版或者汉化版才能正常使用 [6]  (该版本在 Windows8(含 Windows8.1)照样需要改原 MSDEV.EXE 文件名并改兼容性才能正常使用。)。

 

3. 调试性能较差

下面是百度百科的一段话:

 

但是,这个版本在 Windows XP 下运行会出现问题,尤其是在调试模式的情况下(例如:静态变量的值并不会显示)。这个调试问题可以通过打一个叫“Visual C++ 6.0 Processor Pack”的补丁 [3]  来解决。)

 

 

你看,一段 C++爬虫代码,VS 是多么清晰~

 

顺便扯一句,使用多维数组还可以显示出维度、数据还会用类似于注册表编辑器路径的展示方式展现哦~

 

4.template

VC6.0 对模板的支持比较差,因为 C++11 标准库全是模板类型,所以 VC6.0 肯定无法运行它们,这样你的程序就会逊色得多。

 

5. 对于 throw 出来的一些 C++11 的一些很棒的特性,你没有 catch 到!

数数:

 

类型  作用
vector 可变长数组
(w)string 可变长字符串,支持 find、replace 等等
regex 正则表达式
set 集合
map 映射类型,类似于 Python 中的字典

……
还有一些原生特性,比如范围 for等等。
我相信你一定不想错过吧~

 

6. 推荐的编译器:

Visual Studio 2013、2015、2017,或更高版本

 

Visual Studio 是一款非常棒的 IDE,是 Visual C++6.0 的继承者,微软开发,有“宇宙最强 IDE”之称。


建议大家去百度一下,你一定会惊到的。