diff --git a/datatype/MapTest.cpp b/datatype/MapTest.cpp index ba7a81f..d709180 100644 --- a/datatype/MapTest.cpp +++ b/datatype/MapTest.cpp @@ -88,14 +88,39 @@ void StringMapTest() }); cout< ui_map; + + for(auto &ui:user_info_array) + { + UserInfoClass *uic=new UserInfoClass; + + uic->Set(ui); + + ui_map.Add(ui.name,uic); + } + + ui_map.Enum([](const UTF8String &key,UserInfoClass *&ui) + { + cout<<"["<GetSex()?"male":"female")<<","<GetAge()<<"]"< Test"< Test"< Test"< &ua) { cout<<"user info array "< +#include + +using namespace std; + struct UserInfo { char name[32]; @@ -39,3 +44,28 @@ static UserInfo user_info_array[]= {"Yoyo",false,42}, {"Zack",true,43} }; + +class UserInfoClass +{ + UserInfo info; + +public: + + UserInfoClass()=default; + + void Set(const UserInfo &ui) + { + memcpy(&info,&ui,sizeof(UserInfo)); + + cout<<"UserInfoClass::Set("<