本文共 880 字,大约阅读时间需要 2 分钟。
#include#include
using namespace std;
struct preMedInfo{ int medId; string medName; string medNum; string medUnit; string medFactory; string medTypeUnit;};struct ManualMedicine{ int preId; listlstMed;};
iterator不能修改双向链表(list)结构体对象(struct)指定成员的数据,需要通过一层一层插入(Insert)新的结构体对象(struct),擦除(erase)旧的结构体对象(struct)来解决。使用reverse_iterator就可以直接修改双向链表(list)结构体对象(struct)指定成员的数据
void Main(){ listlMM; preMedInfo pMI; pMI.medId = 0; pMI.medNum = "2"; ManualMedicine MM; MM.preId = 1111; MM.lstMed.push_back(pMI); lMM.push_back(MM); list ::reverse_iterator iter; list ::reverse_iterator iterMI; for (iter = lMM.rbegin(); iter != lMM.rend(); iter++) { for (iterMI = iter->lstMed.rbegin(); iterMI != iter->lstMed.rend(); iterMI++) { iterMI->medNum = "3"; } }}
转载地址:http://fmjub.baihongyu.com/