新建单文档MFC程序后直接编译运行出错,求救!

hixeek 2011-03-02 10:36:52
在VS2010中新建了一个MFC单文档程序,一行代码未写 直接运行出现如下错误:

1>------ 已启动生成: 项目: tst, 配置: Debug Win32 ------
1>生成启动时间为 2011/3/2 22:25:56。
1>PrepareForBuild:
1> 正在创建目录“d:\documents\visual studio 2010\Projects\tst\Debug\”。
1>InitializeBuildStatus:
1> 正在创建“Debug\tst.unsuccessfulbuild”,因为已指定“AlwaysCreate”。
1>ClCompile:
1> stdafx.cpp
1>c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\afx.h(1431): error C2065: “_CRTDBG_CHECK_ASIZEAYS_DF”: 未声明的标识符
1>
1>生成失败。
1>
1>已用时间 00:00:03.56
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

双击那个错误,进入了afx.h这个文件,代码段如下:

enum AfxMemDF // memory debug/diagnostic flags
{
allocMemDF = _CRTDBG_ALLOC_MEM_DF, // turn on debugging allocator
delayFreeMemDF = _CRTDBG_DELAY_FREE_MEM_DF, // delay freeing memory
checkASIZEaysMemDF = _CRTDBG_CHECK_ASIZEAYS_DF, // AfxCheckMemory on every alloc/free
checkEvery16MemDF = _CRTDBG_CHECK_EVERY_16_DF,
checkEvery128MemDF = _CRTDBG_CHECK_EVERY_128_DF,
checkEvery1024MemDF = _CRTDBG_CHECK_EVERY_1024_DF,
checkDefaultMemDF = _CRTDBG_CHECK_DEFAULT_DF
};

其中checkASIZEaysMemDF = _CRTDBG_CHECK_ASIZEAYS_DF, // AfxCheckMemory on every alloc/free
这行提示出错"未定义标识符"_CRTDBG_CHECK_ASIZEAYS_DF"

前几天写程序都没有问题的,今天突然出现这个问题,不知道是什么原因啊
本人初学MFC,望高手指点!不胜感激!
...全文
301 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
broth 2012-06-22
  • 打赏
  • 举报
回复
同求解,望解答
jihesong 2011-10-23
  • 打赏
  • 举报
回复
俺是菜鸟中的菜菜鸟!在看windows程序设计的源代码,在DEBUG文件夹下的EXE文件是只读的,改了属性或者直接删了,就能编译通过了,有人说建立一个新项目当然可以,不过咱建立新项目还不是很熟,嘿嘿。
无水先生 2011-03-10
  • 打赏
  • 举报
回复
代码给我:yamagoya@sohu.com
liang_lq 2011-03-03
  • 打赏
  • 举报
回复
不懂,没遇到过
初学就用VC6.0嘛,好多视频教程都是6.0的~~~
chenjelly 2011-03-03
  • 打赏
  • 举报
回复
没有用过VS2010……
手机写程序 2011-03-03
  • 打赏
  • 举报
回复
到afx.h看下_CRTDBG_CHECK_ASIZEAYS_DF定义在哪里,如果在别的头文件就把她包含到stdafx.h试试。
无水先生 2011-03-03
  • 打赏
  • 举报
回复
一般是环境问题
TandyT 2011-03-03
  • 打赏
  • 举报
回复
那你新建个基于对话框的或者是多文档的工程试试?我的是VC2010 ,没遇到多你这情况,是不是你的VS问题?
hixeek 2011-03-03
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 gongdiwudu 的回复:]

一般是环境问题
[/Quote]
请问能说的具体一点吗?一般改变什么环境会出现这样的问题呢?
hixeek 2011-03-03
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 eyey1 的回复:]

到afx.h看下_CRTDBG_CHECK_ASIZEAYS_DF定义在哪里,如果在别的头文件就把她包含到stdafx.h试试。
[/Quote]
这个_CRTDBG_CHECK_ASIZEAYS_DF找不到任何定义,甚至在google搜"_CRTDBG_CHECK_ASIZEAYS_D"找不到任何结果
hixeek 2011-03-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 tandyt 的回复:]

那你新建个基于对话框的或者是多文档的工程试试?我的是VC2010 ,没遇到多你这情况,是不是你的VS问题?
[/Quote]
新建任何MFC工程都出现这样的错误
我也没改什么设置啊 真的是有些奇怪 难道非得让我重装么 我知道重装以后应该不会有问题了 但是就是想知道出现这个错误的原因..

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧