CArray存放变长的结构体+?

nix3m 2003-09-09 04:30:16
typedef struct MutiPoint
{
AVSBoundingBox m_Box; // Bounding Box
int m_nNumPoints; // Number of Points
CArray<AVSPoint, AVSPoint&> m_arrPoints;// The Points in the set
MutiPoint& operator = (const MutiPoint& multiPoint)//Note: if not overload this oprator, CArray will send compile fatal error.
{
m_Box = multiPoint.m_Box;
m_nNumPoints = multiPoint.m_nNumPoints;
m_arrPoints.Copy(multiPoint.m_arrPoints);
return *this;
}
} AVSMutiPoint;
如上所示的一个结构体,
我用CArray<AVSMutiPoint, AVSMutiPoint&> m_arrMultiPoint;
当我用m_arrMultiPoint.m_arrPoints.Add(point)时,提示内部指针无效,这是怎么回事。
...全文
90 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
newsb 2003-09-09
  • 打赏
  • 举报
回复
最好还是放指针在里面,避免很多的麻烦
lyrzhlgq 2003-09-09
  • 打赏
  • 举报
回复
接分
IThurricane 2003-09-09
  • 打赏
  • 举报
回复
接分
nix3m 2003-09-09
  • 打赏
  • 举报
回复
谢谢大家光临!
问题是由于我的初始化指针为空值引起的,让大家老架了:)
大家有没有对ITS(Intelligence Traffic System)感兴趣的,可以讨论一下。现在开始散分:)
nix3m 2003-09-09
  • 打赏
  • 举报
回复
谢谢bluebohe。
这个错误的原因只能归功于我的编程经验不够,对内存管理不是十分的熟悉。现在我的问题已解决。最主要是把一个重要的指针变为空值了。
其实,我用CArray只是熟悉以下他的用法,用C的方法我早就实现了,不过,在是实现这个类似多叉树的存储中,c的方法也不见的简单:)
谢谢大家光临,现在开始散分。
顺便问一下,大家有没有对交通导航系统感兴趣的,有兴趣的可以一起探讨一下
hydcumt 2003-09-09
  • 打赏
  • 举报
回复
同意楼上的建议!
bluebohe 2003-09-09
  • 打赏
  • 举报
回复
数组最好存放结构体的指针!,这样的话就没有中间的拷贝构造等等,速度会快很多的,也不容易出错,只要在加的时候new,删的时候delete就可以了
bluebohe 2003-09-09
  • 打赏
  • 举报
回复
数组最好存放结构体的指针!,这样的话就没有中间的拷贝构造等等,速度会快很多的,也不容易出错,只要在加的时候new,删的时候delete就可以了

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧