在C++里常用类型转换感觉很杂,不好用;跟C#没得比:可以强类型转换,还有convert通用的转换,非常方便的说。
刚用wxwidget时类型转换也是一头大,了解后发现要比MFC简洁好用多,接口也容易记住。
下面上WXWIDGET常用类型转换:
一、wxstring与其他类型转换
1.1、int to wxString:
wxString str = wxString::Format(wxT("%i"),myInt);
1.2、wxString to int :
int i;
i = wxAtoi(str);
1.3、string to wxString:
std::string stlString = "sdfas";
wxString mystr(stlString .c_str(),wxConvUTF8);
1.4、wxString to string:
wxString mystring(wxT("HelloWorld"));
std::string stlstring = std::string(mystring.mb_str());
1.5、char* to wxString:
char* chars = "Hello world";
wxString mystring(chars, wxConvUTF8);
1.6、wxString to char*:
char* cs = str.mb_str(wxConvUTF8);
1.7、char[] to wxString:
char chars[34] = "sefasd";
wxString mystring(chars, wxConvUTF8);
1.8、wxString to char[]:
wxString mystring(wxT("HelloWorld"));
char cstring[1024];
strcpy(cstring, (const char*)mystring.mb_str(wxConvUTF8));
二、wxdatetime 与wxstring转换
2.1、wxdatetime to wxstring :
wxDateTime dt = CalendarCtrl1->GetDate();
wxString msg = dt.Format(wxT("%Y-%m-%d"),wxDateTime::A_EST);
2.2 wxstring to wxdatetime:
char* ca = "2008-09-03";
wxDateTime dt;dt.ParseDate(ca);
时间格式化参考:http://www.cplusplus.com/reference/c.../strftime.html
From:http://hi.baidu.com/hq81/blog/item/d47582818b3bbdd1bd3e1e61.html