关于stl 能否获得对象的指针?而不是iterator?解决方案
关于stl 能否获得对象的指针?而不是iterator?
struct _TESTINFO
{
int nIndex;
CString sContent;
};
_TESTINFO mTest1,mTest2,mTest3;
..
list<_TESTINFO> list_test;
list_test.push_back(mTest1);
list_test.push_back(mTest2);
list_test.push_back(mTest3);
获取值我知道是可以list<_TESTINFO>::iterator itor
itor->nIndex;
itor->sContent;
但是我现在在做一个序列化的东西,
struct _TESTINFO
{
friend CArchive & <<(CArchive &ar,_TESTINFO &Data);
...
};
如何直接将list对象的指针取出来 然后直接ar<< list<对象> 呢? 谢谢了
------解决方案--------------------
_TESTINFO *pTestInfo = (_TESTINFO *)&*itor;
struct _TESTINFO
{
int nIndex;
CString sContent;
};
_TESTINFO mTest1,mTest2,mTest3;
..
list<_TESTINFO> list_test;
list_test.push_back(mTest1);
list_test.push_back(mTest2);
list_test.push_back(mTest3);
获取值我知道是可以list<_TESTINFO>::iterator itor
itor->nIndex;
itor->sContent;
但是我现在在做一个序列化的东西,
struct _TESTINFO
{
friend CArchive & <<(CArchive &ar,_TESTINFO &Data);
...
};
如何直接将list对象的指针取出来 然后直接ar<< list<对象> 呢? 谢谢了
------解决方案--------------------
_TESTINFO *pTestInfo = (_TESTINFO *)&*itor;