管中窥豹:VS2005与VC6的差别

原创 2006年06月22日 09:22:00

在VS2005调试IPMsg 2.6的源代码时发现以前在VC6编译完全没问题(或许是warning而未加注意)的代码报了Error,试举两例:

1) 临时变量的生存期不再顺延
  for (int cnt=0; .........)
 {
  ....
 }
 cnt = 1; //Works well in VC6, but causes ERROR in VS2005!
 
2) 函数名称再取地址才能赋给函数指针
class TRecvDlg : public TListDlg
{
 BOOL RecvDirFile(void);
}

创建一个函数指针指向成员函数,在VC6中直接将函数名称赋值给指针就可以了:
BOOL (TRecvDlg::*RecvFileFunc)(void) = TRecvDlg::RecvDirFile;

但在VS2005中,必须要将函数名称再取地址才能赋给函数指针!如:
BOOL (TRecvDlg::*RecvFileFunc)(void) = &TRecvDlg::RecvDirFile;
否则编译报error:
function call missing argument list; use '&TMainWin::SendDirFile' to create a pointer to member

VC6.0转vs2005

首先在此引一例子 当源文件由vc++6.0转到vs2008时会出现如下错误: 错误一:error C2039: 'WriteHuge' : is not a member of 'CFile'" ...
  • fin86889003
  • fin86889003
  • 2013年07月01日 10:17
  • 798

VC6与VS2005冲突

电脑上如果同时有VC6与vs2005 vc6编译时有可能会经常造成无法编译.甚至(编译过程无法停下来)造成系统异常,无法重启. 大家注意.这跟之前什么杀毒软件冲突无关. 解决方法..... 卸载vs2...
  • cenjoyer
  • cenjoyer
  • 2009年04月16日 09:13
  • 584

VC6、VS2005环境搭建驱动开发环境注意事项

① 张帆编写的《Windows驱动开发技术详解》中的示例,都是针对VC6.0+ WDK3790.1830+目标为WinXP,环境而准备的,因此: (VC6.0不能将上述设置为wxp目录,因为V...
  • dijkstar
  • dijkstar
  • 2015年01月03日 15:17
  • 1625

evc程序移植到VS2005

一、VS2005新建工程(跟要移植的工程同名,这样可以复制资源)。 二、把evc下的.h 和.cpp文件复制到新工程,把原.rc文件覆盖新工程.rc。 复制资源有几种方法,这里引用一个网友xuyong...
  • aristolto
  • aristolto
  • 2013年09月06日 15:48
  • 1777

从VC 6.0移植代码到VS C++ 2005得出的一些经验

作者:朱金灿来源:blog.csdn.net/clever101 最近将一个系统的源码从VC 6.0移植到VS C++ 2005上,从而得出了一些经验。不同编译平台的代码移植(这里指从低版本的编译器往...
  • clever101
  • clever101
  • 2009年03月12日 09:45
  • 2596

Matlab7.1用VS2005的编译器步骤

    因为最近事情需要,想用VC调用Matlab的程序,可是我的是VS2005,而Matlab的版本是7.1,上网搜索后发现很多人说(通过转载或是新帖)Matlab7.1不支持VS2005啊,但是我...
  • rcaiwys
  • rcaiwys
  • 2010年06月15日 15:05
  • 1961

VC6/VS2005)中添加Manifest

在VC工程(VC6/VS2005)中添加Manifest 在Vista操作系统中通过manifest文件使VC应用程序获得管理员权限: http://blog.csdn.net/leeni...
  • jiht594
  • jiht594
  • 2012年04月28日 16:50
  • 838

vc6到 vs2008 char* 与 CString 之间 字符串转换函数

从vc6到 vs2008 字符串转换是表麻烦,于是参考相关资料,写了两个函数。 char*与CString的转换 CString MCharToCString(char* szChar) ...
  • zeng133
  • zeng133
  • 2012年05月03日 23:20
  • 1083

解决VC6 --> VC2005 --> VC2008 中没有<sys/time.h> 问题

解决VC6 --> VC2005 --> VC2008 中没有   问题 解决方案来自csdn:http://topic.csdn.net/u/20080408/00/94a28ec7-799c-4...
  • wsh6759
  • wsh6759
  • 2011年10月26日 11:14
  • 2208

[转]VC6.0与VS2005的一些差别

一、         VC 6.0 中的 MFC ClassWizard 从 Visual Studio 2005 开始已被分拆成两个功能: 1.     对控件和菜单建立事件映射的功能 菜单视图 (...
  • hiside
  • hiside
  • 2010年06月22日 22:23
  • 711
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:管中窥豹:VS2005与VC6的差别
举报原因:
原因补充:

(最多只允许输入30个字)