查看: 1879|回复: 2

使用osg::Vec2sArray的时候提示析构函数错误

[复制链接]

该用户从未签到

发表于 2009-8-1 21:24:25 | 显示全部楼层 |阅读模式
osg::Vec2sArray是类模板实例化得到的模板类,如下:
typedef TemplateArray<Vec2s,Array::Vec2sArrayType,2,GL_SHORT>                   Vec2sArray;
但是我在主主函数中声明一个对象
osg::Vec2sArray field;
编译的时候提示
error C2248: “osg::TemplateArray<T,ARRAYTYPE,DataSize,DataType>::~TemplateArray”: 无法访问 protected 成员(在“osg::TemplateArray<T,ARRAYTYPE,DataSize,DataType>”类中声明)
        with
        [
            T=osg::Vec2s,
            ARRAYTYPE=Vec2sArrayType,
            DataSize=2,
            DataType=5122
        ]
莫名奇妙,也就是析构函数有问题,我看了一下析构函数, virtual ~TemplateIndexArray() {}
什么都没有,怎么回事呢?
难道还需要对Vec2sArray对象进行某些操作?

该用户从未签到

 楼主| 发表于 2009-8-1 21:43:17 | 显示全部楼层
帮忙解决啊,郁闷了

该用户从未签到

发表于 2009-8-1 22:30:36 | 显示全部楼层
Vec2Array等数组必须使用下面的方法初始化:
osg::ref_ptr<Vec2Array> array = new Vec2Array;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表