加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • 1. 不支持 C99
    • 2. 兼容性极差
    • 3. 调试性能较差
    • 4.template
    • 5. 对于 throw 出来的一些 C++11 的一些很棒的特性,你没有 catch 到!
    • 6. 推荐的编译器:
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

不应该再继续使用VC++ 6.0的6个理由

2021/01/25
1024
阅读需 1 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

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”之称。

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

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
DSC1001BI2-012.5000 1 Microchip Technology Inc CMOS Output Clock Oscillator
$1.35 查看
ABM8-32.000MHZ-10-B1U-T 1 Abracon Corporation CRYSTAL 32.0000MHZ 10PF SMD
$1.19 查看
S29AL016J70TFI020 1 Cypress Semiconductor Flash, 1MX16, 70ns, PDSO48, TSOP-48
$10.3 查看

相关推荐

电子产业图谱