C++基础(C++指针的新需求)

C++基础(C++指针的新需求),第1张

C++基础(C++指针的新需求),第2张

指针使用的基本问题:
1。内存泄漏;
2。Wild指针(指针指向已经失效的内存);
尤其是当多个指针指向同一个内存区时,哪个指针负责析构是最麻烦的事情。
针对这种情况,首先要引入指针的所有权:
谁释放了指针所指向的内存,谁就拥有了所有权。
有三种情况:
1
2。几个指针共享所有权;
3。有的指针只有引用权;
共享所有权指针的要求:
ViSharePtr m _ SP1 = new ViObj;
m _ SP2 = m _ SP1;
m _ SP1 = NULL;//!无法执行Destruct
m_sp2,因为其他人拥有此所有权;//!仍然有效
m _ SP2 = NULL;//!执行析构函数
实现方式:引用计数器
引用指针
ViOwnPtr m _ op = new ViObj;//!所有权指针
ViRefPtr m _ RP = m _ op;//!引用
delete m _ op;
assert(m _ RP = = NULL);//!对象析构后,所有引用指针都设置为空;
实现:引用列表
提示:
指针命名:
1 ._rp_ reference指针
2。_op_ ownership指针
3。_sp_ shared指针

消息对象;
Hold指针状态判断;

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » C++基础(C++指针的新需求)

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情