hur.cn - 华软网

 热门搜索

关于指针是否初始化的问题

  作者:未知    来源:网络    更新时间:2011/1/12
CMap<CString,LPCTSTR,good*,good*> m_topmostTiles ;//寄存good类
  但CMap未初始化

如何判断从里面掏出的指针是否分配了空间?
例如:假定分配了10个空间,如何判断掏出的第十一个指针是否分配了空间?

---华软 网友回答---
你取得出来吗???
CMap自身只是个容器,不需要初始化
---华软网友回复---
m_topmostTiles.GetNextAssoc(pos,nKey,qt);
if (qt!=NULL)//这里如何判断是否不为空指针?
{
      qt->Initialize(drawArgs);//对每一个瓦片初始化
}
---华软网友回复---
取得出来啊
---华软网友回复---
IsBadReadPtr(指针,长度) 是否可读

IsBadWritePtr(指针,长度) 是否可写
---华软网友回复---
CMap中如何判断是否有有某个键值呢
 
   假定有一个:CString temp = L"dfadfasdf";
如何判断CMap中是否有该key呢 ?

---华软网友回复---
不是有Lookup函数么......
---华软网友回复---
引用 5 楼 askgun 的回复:
CMap中如何判断是否有有某个键值呢
 
  假定有一个:CString temp = L"dfadfasdf";
如何判断CMap中是否有该key呢 ?

Lookup 
 Looks up the value mapped to a given key. 
 
PLookup 
 Returns a pointer to a key whose value matches the specified value. 
 

---华软网友回复---
照旧没有解决:
CMap<int ,int&,int ,int&> mmap;
给其赋100个值

如何判断第101个值是否是合理?
---华软网友回复---
即我取
int mm ;
mmap.lookup(100,mm);
如何判断mm是否是正常的值
---华软网友回复---
感觉你基本不会用CMap......

---华软网友回复---
或取
mmap.lookup(100,mm);

---华软网友回复---
mmap.lookup(200,mm);
---华软网友回复---
有getcount猎取总的item个数
---华软网友回复---
你是想判断指针是否有效吧?
AfxIsValidAddress
Tests any memory address to ensure that it is contained entirely within the program's memory space. 

AfxIsMemoryBlock 
Tests a memory address to make sure it represents a currently active memory block that was allocated by the diagnostic version of new.  

---华软网友回复---
如果你查询的主键值在CMap中不存留,那么Lookup函数会前往0,否则前往非0
---华软网友回复---
不同的线程用统一个东东

然后提取某个键值对应的value;
value 为指针,如何判断指针里面的变量不是乱码?

---华软网友回复---
#15楼 受教

---华软网友回复---
那你这个线程自身有问题,产生了冲突了。如果一个线程中把指针delete了,但没有措置惩罚CMap的话,那即使判断出来肯定也不合适你程序的原本逻辑了。
---华软网友回复---
14 15楼,谢谢啊
---华软网友回复---
cmap 只是个 容器 ? 那和指针集同等能够不
---华软网友回复---
能够......
          
     
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。