typedef struct { time_t MaxTimeStamp; vector<string> ThridIndex; }SECOND_INDEX_NODE; typedef struct { u_int32_t nCollisionTimes; map<string,SECOND_INDEX_NODE> SecondIndex; }FIRST_INDEX_NODE; class TEST { ................. FIRST_INDEX_NODE m_FirstIndex[100000]; ................. } |
#include <cstdio> #include <cstdlib> #include <cstring> #include <map> #include <vector> using namespace std; typedef struct { int nCollisionTimes; map<int,string> mapValue; }FIRST_INDEX_NODE; typedef map<int,string>::iterator P_MAP; int main() { FIRST_INDEX_NODE *pIndex = (FIRST_INDEX_NODE *)malloc(10*sizeof(FIRST_INDEX_NODE)); pIndex[0].mapValue.insert(make_pair(1,"Pather1")); free(pIndex); } |
原帖由 jiangf 于 2009-8-19 14:44 发表
FIRST_INDEX_NODE *pIndex = (FIRST_INDEX_NODE *)malloc(10*sizeof(FIRST_INDEX_NODE));
pIndex[0].mapValue.insert(make_pair(1,"Pather1 "));
free(pIndex);
原帖由 OwnWaterloo 于 2009-8-19 15:03 发表
FIRST_INDEX_NODE *pIndex = new FIRST_INDEX_NODE[10];
pIndex[0].mapValue.insert(make_pair(1,"Pather1"));
delete [] pIndex;
原帖由 OwnWaterloo 于 2009-8-19 17:24 发表
要用malloc, free也是可以:
T* p = static_cast(malloc(sizeof(*p)));
new (p) T( arguments, for, consturctor );
p->use();
p->~T();
free(p);
new operator完成2种工作:分配空间, 构造对 ...
欢迎光临 Chinaunix (http://bbs.chinaunix.net/) | Powered by Discuz! X3.2 |