VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1102|回复: 10

错误提示“内存不能为读”。。。。怎么解决?

[复制链接]

2

主题

4

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-2-14 20:00:01 | 显示全部楼层 |阅读模式
代码编译通过,也能运行,但当执行一下程序时就提示“某处内存不能为读”,请问是什么回事?要怎么办??
CCustumInfoSet cSet(&theApp.db);
        CBookRoomView *brvDlg;
        brvDlg->m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT| LVS_EX_GRIDLINES);
       
        cSet.Open();
        CODBCFieldInfo info;
        for(int i=0;i<cSet.GetODBCFieldCount();i++){
                cSet.GetODBCFieldInfo(i,info);
                brvDlg->m_list.InsertColumn(i,info.m_strName,LVCFMT_LEFT,_tcslen(info.m_strName));
        }
        cSet.Close();
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-9-4 12:15:01 | 显示全部楼层
我也出错了,是在连接数据库的情况下,而且还有断言错误
回复

使用道具 举报

0

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
发表于 2020-9-4 12:30:01 | 显示全部楼层
CBookRoomView   *brvDlg;
brvDlg-> m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT|   LVS_EX_GRIDLINES);
=============
CBookRoomView *brvDlg只是一个指针,没有实例化下面就开始用了,当然会出错了。
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-9-4 12:45:01 | 显示全部楼层
这种错误一般就是某个指针指向的地方不对,视情况而定,如果 是一个很小的数,比如说是0x00000023
那就可能某个指针为空,又加上了个偏移.
如果是一个比较大的数,比如0x5FFFFFFF,那可能就是指针没有初始化,就像你的brvDlg;

你自己在弹出错误提示的时候,先点重试,再点调试,进入调试看是哪里的问题.

最明显的错误在这里
CBookRoomView   *brvDlg;
brvDlg-> m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT|   LVS_EX_GRIDLINES);
brvDlg都没有赋值就进行调用,当然是错的
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-9-4 13:15:01 | 显示全部楼层
[Quote=引用 2 楼 shamingjia 的回复:]
CBookRoomView *brvDlg;
brvDlg-> m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT| LVS_EX_GRIDLINES);
=============
CBookRoomView *brvDlg只是一个指针,没有实例化下面就开始用了,当然会出错了。
[/Quote]
试试看
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-9-4 13:30:01 | 显示全部楼层
CBookRoomView   *brvDlg = GetYourDlg();//首先要获得你要修改的那个DLG
回复

使用道具 举报

0

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-9-4 14:00:01 | 显示全部楼层
try catch抓一下看看是不是可识别的异常
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-9-4 14:30:01 | 显示全部楼层
一般都是野指针吧
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-9-4 14:45:01 | 显示全部楼层
某处内存不能为读
很多都是 0x000000
空指针
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-9-4 15:00:02 | 显示全部楼层
同意楼上几位,CBookRoomView *brvDlg没有初始化。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表