这两天让我优化C++代码,把一些代码摘录下来。。
定义:list
list<LPSTRU_ORFEE> m_list_Orderfee;
typedef struct{
char CURRENCY_CODE[20];
double DUE_MONEY;
double DISC_MONEY;
double PRIME_MONEY;
}STRU_ORFEE,*LPSTRU_ORFEE;
list的填充:
LPSTRU_ORFEE pFree = new STRU_ORFEE;
memset(pFree, 0 , sizeof(STRU_ORFEE));
strcpy(pFree->CURRENCY_CODE,s1.c_str());
pFree->DUE_MONEY = fDueMoney;
m_list_Orderfee.push_back(pFree);
迭代器:list<LPSTRU_ORFEE>::iterator pn;
使用迭代器访问list:
//清空list
LPSTRU_ORFEE pFee = NULL;
for (pn = m_list_Orderfee.begin(); pn != m_list_Orderfee.end() ; pn++)
{
pFee = (*pn);
if (pFee != NULL)
{
delete pFee;
pFee = NULL;
}
}
m_list_Orderfee.clear(); //清空后clear不能忘记。