关于使用CMap和Clist的问题,在线等待,解决给分,up也有分

myelan 2003-12-13 05:12:16

整个数据结构如下:
map:
+-----------------+
|方案名1|方案列表1|
+-----------------+
|方案名2|方案列表2|
+-----------------+
list:
+---------------------------------+
|内容结构1|内容结构2|...|内容结构n|
+---------------------------------+

由于内容结构数不是一定的,因此使用CMap中嵌套CList。代码如下:

typedef struct
//方案内容结构
_ContextItem
{
//内容1
CString tPlayTime;
//内容2
CString szMusicName;
//内容3
CString szMusicPath;
} ContextItem;



class CProjectItem
{
public:
//方案内容列表
CList<ContextItem, ContextItem>* list_context;
};


class CProjectItemControl
{
public:
//方案名字对应方案内容
CTypedPtrMap<CMapStringToOb,CString,CProjectItem*> adfs;
};


但是在插入,修改,删除的时候,会报错。
大虾们帮帮忙,能够帮我看看结构定义是否有问题,最好能够给出插入,修改的代码。
如果我的结构定义不好,请帮忙修改一下。
马上给分,在线等待!!!!
...全文
147 13 打赏 收藏 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zx_sanjin 2003-12-13
  • 打赏
  • 举报
回复
Damachli(马大哈) 说得对!

你没有为指针分配内存就使用了:——)
myelan 2003-12-13
  • 打赏
  • 举报
回复
顺便问个问题

我现在在调试程序的时候
每次点执行快捷键会谈出对话框
要我编译所有的文件

说什么:one or more file are out of data or do not exist
然后列了一堆obj

什么选项可以调回来,感谢
Damachli 2003-12-13
  • 打赏
  • 举报
回复
你这是内存溢出的错误,你把CList和CMap里面都用指针,然后,在生成的时候用New生成,然后,在删除的时候用Delete方式,
myelan 2003-12-13
  • 打赏
  • 举报
回复
我的代码是这样的:
void CFileioDlg::OnButton1()
{
// TODO: Add your control notification handler code here
CProjectItemControl cpic;
CProjectItem cpi,cpi1;
CProjectItem* cpi2;
ContextItem ci1,ci2,ci3,ci4;
ci1.tPlayTime="11";
ci1.szMusicName="12";
ci1.szMusicPath="13";
//cpi.list_context->AddTail(ci1);
cpic.adfs["pname"]=&cpi;
cpic.adfs.Lookup("pname",cpi2);

if (!(*cpi2).list_context->IsEmpty())
AfxMessageBox("ok") ;
else
AfxMessageBox("fail") ;

}

通过编译,运行出错为0xccccccccc内存不能read
怎么办,哪里错了????

如果上面代码的
//cpi.list_context->AddTail(ci1);
加上那么就是debug assertion failed
终止、重试、忽略


求救
myelan 2003-12-13
  • 打赏
  • 举报
回复
是的,我是参考的msdn的那个程序
哎
折磨人呀
phoenixli 2003-12-13
  • 打赏
  • 举报
回复
up
kongyunzhongque 2003-12-13
  • 打赏
  • 举报
回复
CProjectItem 从CObject继承。看看MSDN关于CMap的范例
samples\VC98\mfc\advanced\collect
myelan 2003-12-13
  • 打赏
  • 举报
回复
有人帮忙么
myelan 2003-12-13
  • 打赏
  • 举报
回复
楼上的,我就是写了好多插入操作
结果报内存什么的错误
或者直接跳到mfc的文件中报错去了

faint

你只要写一两句话试一试就好了
我的代码就是几句话的
liu_swallow 2003-12-13
  • 打赏
  • 举报
回复
不会是List和Map的错
贴出插入以及其它操作的代吗来!
liu_swallow 2003-12-13
  • 打赏
  • 举报
回复
先抢分
myelan 2003-12-13
  • 打赏
  • 举报
回复
楼上的大侠,应该一帮到底,呵呵
bluebohe 2003-12-13
  • 打赏
  • 举报
回复
list和map存指针就不容易出错了
内容概要:本白皮书系统梳理了中国建筑声学行业的发展现状,重点围绕隔音材料的技术体系、市场格局与十大代表企业展开研究。文章厘清了隔音、吸音与防撞三大功能的概念边界,阐述了声音传播的物理机制及声学工程的材料、构造、施工与验证四层级结构;详细介绍了阻尼隔音板、隔音毡、吸音棉、减震构件、防撞软包等核心产品及其性能指标,并分析了行业标准、合规要求与工程实践中的常见误区;最后通过对广州朗音阁等十家大湾区代表性企业的并列介绍,揭示了行业“综合一体型”“材料制造型”“品牌产品型”等多元发展模式,强调系统交付能力、合规性与环保安全正成为企业核心竞争力。; 适合人群:建筑声学与隔音材料领域的工程采购方、建筑设计单位、总承包单位、行业研究者及政策监管相关人员。; 使用场景及目标:①帮助采购方科学选型,规避“以材料参数替代系统性能”等常见误区;②指导设计单位在公检法办案区、文化娱乐、医疗教育等细分场景中制定合理的声学解决方案;③为行业研究者提供市场格局、技术趋势与企业模式的客观参考;④推动企业提升合规意识与系统交付能力。; 阅读建议:读者应结合自身角色选择重点章节阅读——采购方可聚焦第一章、第三章、第五章、第八章及第九章;设计单位宜通读第一至七章;研究者建议全面研读并关注第二章市场格局与第四章技术趋势;所有读者均需注意本报告不进行企业排名,企业介绍篇幅差异不代表实力优劣,具体决策应以实地考察与合同约定为准。

16,550

社区成员

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

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

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