Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3557|回复: 4
打印 上一主题 下一主题

引发了异常: 读取访问权限冲突。 _q_value 是 0xDDDDDDDD。

[复制链接]

1228

主题

1997

帖子

7580

积分

认证用户组

Rank: 5Rank: 5

积分
7580
跳转到指定楼层
楼主
发表于 2020-4-4 16:00:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
名称
类型
id
15987178197214944733
unsigned __int64
parentId
15987178197214944733
unsigned __int64
firstName
???
QString
lastName
???
QString
phoneNum
???
QString
lastLoginTime
???
QString
showUserCount
???
QString
serverCount
???
QString
serverNum
-572662307
int
serviceMax
-572662307
int
queueCount
???
QString
queueNum
-572662307
int
userTotalCount
-572662307
int
userOnlineCount
-572662307
int
otherId
-572662307
int
userIds
{ size = ??? }
QVector<unsigned __int64>
peerData
0xdddddddd {id=??? name=??? nameText={_minResizeWidth={val=??? } _maxWidth={val=??? } _minHeight=??? ...} ...}
PeerData *
hasAvatar
true (221)
bool
online
true (221)
bool
expanded
true (221)
bool
isGroup
true (221)
bool
userInGroup
true (221)
bool
userInGroupTemp
true (221)
bool




引发了异常: 读取访问权限冲突。
_q_value 是 0xDDDDDDDD。


>        LongChat.exe!QGenericAtomicOps<QAtomicOpsBySize<4>>::load<int>(const int & _q_value) 行 83        C++
        LongChat.exe!QBasicAtomicInteger<int>::load() 行 116        C++
        LongChat.exe!QtPrivate::RefCount::ref() 行 49        C++
        LongChat.exe!QString:String(const QString & other) 行 890        C++
        LongChat.exe!Contact::ContactDelegate::paintGroup(QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index, Contact::ContactInfo * pCI) 行 177        C++
        LongChat.exe!Contact::ContactDelegate::paint(QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index) 行 108        C++
        LongChat.exe!QTreeView::drawRow(QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index) 行 1773        C++
        LongChat.exe!QTreeView::drawTree(QPainter * painter, const QRegion & region) 行 1508        C++
        LongChat.exe!QTreeView::paintEvent(QPaintEvent * event) 行 1333        C++
        LongChat.exe!QWidget::event(QEvent * event) 行 8923        C++



回复

使用道具 举报

1228

主题

1997

帖子

7580

积分

认证用户组

Rank: 5Rank: 5

积分
7580
沙发
 楼主| 发表于 2020-4-4 16:01:25 | 只看该作者
  1.         //ContactInfo* pCI = (ContactInfo*)index.data(Qt::DisplayRole).value<void*>();
  2.                         ContactInfo* pCI = dynamic_cast<ContactInfo*>(index.data(Qt::DisplayRole).value<ContactInfo*>());
复制代码
回复 支持 反对

使用道具 举报

1228

主题

1997

帖子

7580

积分

认证用户组

Rank: 5Rank: 5

积分
7580
板凳
 楼主| 发表于 2020-4-4 16:01:43 | 只看该作者
本帖最后由 Qter 于 2020-4-4 16:05 编辑

TreeItem* item = static_cast<TreeItem*>(index.internalPointer());
TreeItem *TreeModel::getItem(const QModelIndex &index) const{    if (index.isValid()) {        TreeItem *item = static_cast<TreeItem*>(index.internalPointer());        if (item)            return item;    }    return rootItem;}
回复 支持 反对

使用道具 举报

1228

主题

1997

帖子

7580

积分

认证用户组

Rank: 5Rank: 5

积分
7580
地板
 楼主| 发表于 2020-4-4 16:57:36 | 只看该作者
  1. //TreeItem* item = static_cast<TreeItem*>(index.internalPointer());
  2.             TreeItem* item = dynamic_cast<TreeItem*>((TreeItem*)index.internalPointer());
复制代码
回复 支持 反对

使用道具 举报

1228

主题

1997

帖子

7580

积分

认证用户组

Rank: 5Rank: 5

积分
7580
5#
 楼主| 发表于 2020-4-8 11:34:21 | 只看该作者
在进行C++开发时候,由于野指针、空指针、未初始化内存等原因,很容易导致内存错误,并报出特定错误码。

Google上对上述错误码的解释如下:

0xCDCDCDCD - Created but not initialised 未初始化的堆内存

0xDDDDDDDD - Deleted 引用的内存已经/对象被删除

0xFEEEFEEE - Freed memory set by NT's heap manager

0xCCCCCCCC - Uninitialized locals in VC6 when you compile w/ /GZ 未初始化的栈内存

0xABABABAB- Memory following a block allocated by LocalAlloc()

VC++在Debug编译方式编译的程序中,会跟踪用new分配的内存。新分配的内存会用0xcd(助记词为Cleared Data)填充,防止未初始化;当它被delete后,又会被0xdd(Dead   Data)填充,防止再次被使用。这样有利于调试内存错误。之所以选这样的填充模式,是因为:

1.大数,若被当成指针就会越界

2.奇数,指针通常指向偶数地址  

3.非0, 这样不会和   NULL   混淆。


在Release版中不会有这些字节填充。
————————————————
版权声明:本文为CSDN博主「jigetage」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jigetage/java/article/details/79709664

回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-4-30 01:55 , Processed in 0.059882 second(s), 18 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

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