李国帅 2018/1/23
#include "Win32header.h"
#include "OSMemory.h"
#include "OS.h"
#include "SVector.h"
class PairElement {
public:
PairElement()
{
mName = NULL;
mValue = 0;
}
PairElement(char* name, int value)
{
mName = name;
mValue = value;
}
PairElement(const PairElement& elem)
{
mName = new char[strlen(elem.mName) + 1];
strcpy(mName, elem.mName);
mValue = elem.mValue;
}
virtual ~PairElement()
{
if (mName != NULL){
delete[] mName;
}
mValue = 0;
}
char *mName;
int mValue;
};
int main(int argc, char* argv[])
{
char* Str1 = new char[10];
strcpy(Str1, "Str1");
char* Str2 = new char[10];
strcpy(Str2, "Str2");
PairElement element1(Str1, 1);
PairElement element2(Str2, 2);
SVector<PairElement> fSeqNumTimeMapping;
fSeqNumTimeMapping.push_back(element1);
fSeqNumTimeMapping.push_back(element2);
if (!fSeqNumTimeMapping.empty())
{
qtss_printf("vector len: %d\n", fSeqNumTimeMapping.size());
}
for (UInt32 i = 0; i < fSeqNumTimeMapping.size();)
{
if (fSeqNumTimeMapping[i].mValue < 2)
fSeqNumTimeMapping.swap_erase(i);
else
{
++i;
}
}
for (UInt32 i = 0; i < fSeqNumTimeMapping.size();i++)
{
if (fSeqNumTimeMapping[i].mName == NULL)
qtss_printf("item: name is null, val %d\n", fSeqNumTimeMapping[i].mValue);
else
qtss_printf("item: name %s, val %d\n", fSeqNumTimeMapping[i].mName, fSeqNumTimeMapping[i].mValue);
}
fSeqNumTimeMapping.clear();
}