我是如何把VC6一直用到2016年的
写下这个标题的时候,也是表明必须需要改变的时候了……
黄山松 (Tom Huang) 发表于博客园http://www.cnblogs.com/tomview/
最早从windows3.1使用vb3编程,操作系统从win95,98,2000,xp,win7,win8, 甚至现在的win10,使用的编程工具从TC2.0,BC3.0,VC1.52,进化到 VC2.0, VC4.2, VC5.0, 最后到VC6.0,然后就一直维持这个开发工具一直到现在。
从大学期间开始编程,到研究生时做课题研究,到毕业后做智能系统核心算法开发,算起来已经超过20年,以VC作为主要开发工具也已经超过20年,主要的时间都是使用vc6。
能够一直用到现在,主要原因是自己是做算法开发的,做模式识别,神经网络,系统仿真辨识领域的课题和项目。所以VC6在大部分时候还是能胜任的。
此外,WINDOWS也一直保持操作系统的兼容性,VC6能一直开发最新系统的程序,AMD64位技术完美兼容32位,这些都功不可没。
期间试图进化到VisualStudio新版的开发工具,但实验过后发现操作习惯很不一样,所以最终放弃了。
(1)自己最常用的几个vc6的功能在新版的VS里面无法实现,由于这两个功能我每天会用上百次或更多,由于一时没找到解决办法,就没有动力继续研究改换工具了。
(a)在VC6里面给命令ToggleWorkspace指定 Alt + ~ 热键之后,可以非常方便地打开和关闭整个工作区,而新版Vs的命令里面工作区的打开和关闭是不同的命令,此外不同的面板(类视图,文件视图,资源视图等等)的命令也是分开的。所以在vc6里面可以方便的扩大代码区到基本整个屏幕,只需要一个热键(平常我把工具栏也都隐藏,只用热键和菜单)所以整个屏幕基本都是代码区。
(b)自己做了一个Add-in,在指定 Alt + 1热键之后,可以直接在代码区切换头文件和实现文件,.h, .c, .cpp可以自动切换显示。
(c)这个addin里面还有其他一些功能,例如自动添加函数的参数说明注释,自动插入自定义的代码碎片,打开工程目录等等。这些功能新的VS的插件可能都有,但自己原来的是不能用了,需要再研究。放弃已有的,熟悉的东西是很难的啊(很多大公司也是这样倒掉的)
(2)同win7的兼容性问题。在win7上安装vc6的时候说不兼容,但其实忽略之后工作完全正常(据说ole container不兼容),自己也试验过win8和win10,均可以正常工作。
(3)同Office2010不兼容的问题。其实只影响一个打开的工具栏按钮,自己基本从来不用这些按钮,所以也不影响我维持现状。
(4)vc6编译器老化的问题。曾经尝试过用intel的编译器,集成在vc6环境中使用,但没感觉到太大的差别。
(5)编译器不支持新的c++特性的问题。由于一些最新的特性不支持,所以编程时要避免使用最新的C++特性(我难道会用到这些新特性?我这个年纪的人,如果还在编程,很多都在吃老本,所以不需要这些新特性,我们会用自己的办法实现这些新特性的功能)。
(6)新的开源库需要新的C++特性的问题,譬如boost,新的opencv等。这个我都是在vs2015上把这些库增加普通的接口函数,编译为动态链接库来处理的。
(7)团队合作的问题。由于一直是单打独干,所以没有团队合作的问题。这个是自己的选择,也是自己的局限。
(8)版本管理的问题。由于没有团队,所以版本管理就简单了,自己开发了自用的版本管理工具,虽然功能差,但是完全是自己的习惯和思路。
这些年想尽办法延续了VC6的使用,其实也就限制了自己的发展,现在是改变的时候了,怎么改变?是进化到新的visual studio吗?学习新的日新月异的技术?不,是要进入休息(或退休)的状态,少编程,多思考。
有空的时候会写写自己20多年来的代码积累,新的技术日新月异,这些都会被遗弃,被遗弃之前可能会写一写。
自己的算法是不是也可以逐渐开源?
我是如何把VC6一直用到2016年的的更多相关文章
- WIN 下的超动态菜单(二)用法
WIN 下的超动态菜单(一)简介 WIN 下的超动态菜单(二)用法 WIN 下的超动态菜单(三)代码 作者:黄山松,发表于博客园:http://www.cnblogs.com/tomview/ ...
- 词法分析程序 LEX和VC6整合使用的一个简单例子
词法分析的理论知识不少,包括了正规式.正规文法.它们之间的转换以及确定的有穷自动机和不确定的有穷自动机等等... 要自己写一个词法分析器也不会很难,只要给出了最简的有穷自动机,就能很方便实现了,用if ...
- elasticsearch,python包pyes进行的处理
elasticsearch:高性能搜索引擎,官网:https://www.elastic.co/products/elasticsearch/ 对于它相信大家都不陌生,es的使用已经广泛存在 各大网站 ...
- Java JNI 编程进阶 实例+c++数据类型与jni数据类型转换
原文:http://www.iteye.com/topic/295776 JNI一直以来都很少去关注,但却是我心中的一个结,最近这几天刚好手头有点时间,因此抽空看了一下这方面的东西,整理了一份文档,J ...
- PHPNow升级PHP版本为5.3.5的方法
在WIN上有时候需要测试一些PHP程序,又不会自行独立配置环境,那么PHPNow是非常好的选择,这篇文章主要为大家分享下如果将phpnow的php版本升级为5.3.5 在WIN上有时候需要测试一些 ...
- PHPNow升级PHP版本的方法
在WIN上有时候需要测试一些PHP程序,又不会自行独立配置环境,那么PHPNow是非常好的选择. PHPNow自带的PHP版本为5.2.14,而最后一次更新在于2010-9-22,PHP5.2对于现在 ...
- CSS中的浮动清除
先来看一个实验:现在有两个div,div身上没有任何属性.每个div中都有li,这些li都是浮动的. 理想的效果:可实际的效果: 这个地方就涉及到浮动,因为两个父元素div都没有高度(或者小于子元素的 ...
- PHPNow升级PHP版本
PHPNow升级PHP版本 phpnow下载地址:http://www.jb51.net/softs/12868.html 1,先把PHP5.3.5下载下来,在官网我是没找到VC6的版本,只能从Goo ...
- PHPNow升级PHP版本为5.3.5的方法(转)
PHPNow升级PHP版本为5.3.5的方法 原文:http://sharebar.org/1142.html 在WIN上有时候需要测试一些PHP程序,又不会自行独立配置环境,那么PHPNow是非常好 ...
随机推荐
- JS实现带复选框的下拉菜单
这段时间在做后台的时候需要一个可以复选的下拉菜单,用到的是easyUI中的combo的Demo,先看看官方easyUI:http://www.jeasyui.com/documentation/ind ...
- 深入剖析tomcat之一个简单的web服务器
这个简单的web服务器包含三个类 HttpServer Request Response 在应用程序的入口点,也就是静态main函数中,创建一个HttpServer实例,然后调用其await()方法. ...
- 使用CodeFirst创建并更新数据库
本文主要介绍如何使用CodeFirst模式来新建并更新数据库 在使用Entity Framwork的三种方式(ModelFist.DBFirst.CodeFirst)中,CodeFirst方式书写的代 ...
- asp.net MVC helper 和自定义函数@functions小结
asp.net Razor 视图具有.cshtml后缀,可以轻松的实现c#代码和html标签的切换,大大提升了我们的开发效率.但是Razor语法还是有一些棉花糖值得我们了解一下,可以更加强劲的提升我们 ...
- Android Permission 访问权限大全(转)
程序执行需要读取到安全敏感项必需在androidmanifest.xml中声明相关权限请求, 完整列表如下: android.permission.ACCESS_CHECKIN_PROPERTIES允 ...
- linux命令大全之ln命令详解(创建软链接和硬链接)
ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接,分为软链接.硬链接.软链接相当于windows的快捷方式,下面是使用方法和示例 ln是linux中又一 ...
- 第 31 章 项目实战-PC端固定布局[2]
学习要点: 1.大纲算法 2.section和div 3.结构分析 主讲教师:李炎恢 本章主要开始使用学习用HTML5和CSS3来构建Web页面,第一个项目采用PC端 固定布局来实现. 一.大纲算法 ...
- 对于UDS(ISO14229-2006) 汉译的声明(必读)
本系列文章系作者个人翻译,最初目的为方便以后阅读和锻炼英语能力,欢迎读者参阅品鉴,本文不正确之处欢迎读者指出. 本文在此声明著作权利:转载必须注明出处,修改必须通知本作者
- qq空间返回顶部代码
点击这里体验效果 以下是源代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...
- php 7.0 安装以及老版本php删除
一, 安装php7 php7对php5是99%的兼容, 而且性能更好, 网上很多的优秀的库都对版本有一定的要求, 所以推荐安装php7 低于ubuntu 16.04的系统默认的源不带php7, 所以需 ...