1414std::wstring pl::utils::str2wstr (const std::string& str, UINT codePage) {
1515 int len = MultiByteToWideChar (codePage, 0 , str.data (), (int )str.size (), nullptr , 0 );
1616 std::wstring wstr;
17- if (len == 0 ) { return wstr; }
18- wstr.reserve (len);
17+ if (len == 0 ) return wstr;
18+ wstr.resize (len);
1919 MultiByteToWideChar (codePage, 0 , str.data (), (int )str.size (), wstr.data (), len);
2020 return wstr;
2121}
@@ -24,11 +24,11 @@ std::wstring pl::utils::str2wstr(const std::string& str) { return str2wstr(str,
2424
2525std::string pl::utils::wstr2str (const std::wstring& wstr) {
2626 int len = WideCharToMultiByte (CP_UTF8, 0 , wstr.data (), (int )wstr.size (), nullptr , 0 , nullptr , nullptr );
27- std::string ret ;
28- if (len == 0 ) { return ret; }
29- ret. reserve (len);
30- WideCharToMultiByte (CP_UTF8, 0 , wstr.data (), (int )wstr.size (), ret .data (), (int )ret .size (), nullptr , nullptr );
31- return ret ;
27+ std::string str ;
28+ if (len == 0 ) return str;
29+ str. resize (len);
30+ WideCharToMultiByte (CP_UTF8, 0 , wstr.data (), (int )wstr.size (), str .data (), (int )str .size (), nullptr , nullptr );
31+ return str ;
3232}
3333
3434std::vector<std::string_view> pl::utils::split (std::string_view s, std::string_view delimiter) {
0 commit comments