我要发帖 回复

正式会员

9

主题

90

积分

0

专家分

:

私信
发表时间 : 2009-2-23 19:15:32 | 浏览 : 1204    评论 : 8
我现在想把我的一个Object移除,程序是这样的
        ASSERT(m_scene);
vpObject *m_object = vpObject::find(("myobject");
        ASSERT(m_object);               
        if (m_object)
        {
                m_scene->removeChild(m_object);                //从场景中删除       
        }
程序开始能执行,也能删除,但是当我再次将object添加到程序后,
在这么做怎么就删除不了了,请问大侠是什么原因呀。
急死我了!

最近VR访客

Hinasole 评论于2009-2-23 19:17:58
请各位献计献策呀!
administrator专家组 评论于2009-2-23 20:42:41
1.请确定你真正删除了
2.再加入的时候  做一下检查,看是否有同名的存在,

检查一下该obj的引用值,为0时 即全部删除
西安航远 评论于2009-2-24 08:23:43
再添加一次,ref的值会增加的吧
Hinasole 评论于2009-2-24 18:50:30

回复 3楼 的帖子

谢谢
那怎么看该object的引用值呢
Hinasole 评论于2009-2-25 08:59:05
谢谢楼上的
Hinasole 评论于2009-2-25 11:16:15
我知道是什么原因了,
find()有两个函数,
一个是find(const char *),这个只查找到第一个对象
而find(const char *, int n)则查找第n个对象。
babysun 评论于2009-2-26 12:35:54
学习学习

手机版|VR开发网 ( 津ICP备18009691号 ) 统计 网安备12019202000257

GMT+8, 2020-10-28 04:22 PM

返回顶部