为何我的vc不能用模板?

lyf_sky 2004-10-06 08:31:42
看了候捷的深入浅出MFC后也想搞一个Scribble,但类似 CArray<CPoint,CPoint> m_pointArray;
的语句总是通不过编译,怎么回事啊?难道因为是盗版吗,郁闷啊。哪位高手指点迷津,不胜感激
...全文
125 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
mfCVinci 2004-10-14
  • 打赏
  • 举报
回复
ASSERT(m_hObject==NULL);

可能是你用了哪个没初始化过的GDI对象了。。。具体要你在出现ASSERT后按ALT+7查看调用堆栈,知道你出错的函数
lyf_sky 2004-10-08
  • 打赏
  • 举报
回复
我说vc是盗版的啊,楼上的大哥
qfknet 2004-10-08
  • 打赏
  • 举报
回复
我靠!
你连深入浅出这么经典的书都买盗版的???

lyf_sky 2004-10-08
  • 打赏
  • 举报
回复
确实可以看到ASSERT错误的出处了,但我水平有限,不知怎样解决 错误来源于wingdi.cpp中的
CGdiObject::Attach(HGDIOBJ hObject)函数中的 ASSERT(m_hObject==NULL); 语句,这是什么错误,一般什么情况下产生呢?
mfCVinci 2004-10-08
  • 打赏
  • 举报
回复
我是说按F5运行可以查看错误信息的位置...
lyf_sky 2004-10-08
  • 打赏
  • 举报
回复
并不是调试时产生的信息,而是运行时产生的错误信息啊
mfCVinci 2004-10-08
  • 打赏
  • 举报
回复
啊,调试的时候请按F5不要按Ctrl+F5或者那个感叹号,按感叹号右边的按钮,这样有ASSERT错误的时候你就可以直接在源代码中查看了。
lyf_sky 2004-10-08
  • 打赏
  • 举报
回复
现在可以用了,因为原来的vc差一个文件,重装vc后可以使用模板了,但运行程序时弹出一个对话框,内容如下:
Debug Assertion Failed
Program:...\Microsoft Visual Studio\MyProjects\MyPanel\Debug\MyPanel.exe
File:wingdi.cpp
Line:1120

For information on howyour program can cause an assertion
failure,see the Visual C++ documentation on asserts
(press Retry to debug the application)

点击忽略可以正常存取,不知是怎么回事呢?
jdzwq 2004-10-07
  • 打赏
  • 举报
回复
这样定义
typedef CArray<CPoint,CPoint&> CMyArray;
声明变量:CMyArray m_pointArray;
lyf_sky 2004-10-07
  • 打赏
  • 举报
回复
加了好象还是不能用啊,具体加哪一行
jdzwq 2004-10-06
  • 打赏
  • 举报
回复
在stdafx.h中:
include <afxtempl.h>

16,551

社区成员

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

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

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