std::wstring ConvertAsciiToUnicode(const char* asciiString) { if (asciiString == 0) return L""; #ifdef _DEBUG for (size_t i = 0; i < strlen(asciiString); ++i) { assert( IsAsciiCharacter( asciiString[i] ) ); } #endif return ConvertUtf8ToUnicode(asciiString); }
CMString& CMString ::operator=(CHAR *s) { if(m_sData) { delete []m_sData; m_sData = NULL; } if(s!=NULL) { INT32 len=strlen(s)+1; m_sData = new WCHAR[len]; ASSERT(m_sData!=NULL); memset(m_sData,0,len*sizeof(WCHAR)); ConvertUtf8ToUnicode(s,m_sData,len); } return *this; }
CMString::CMString(const CHAR*s) { m_cdata = NULL; m_sData = NULL; if(s!=NULL) { INT32 len=strlen(s)+1; m_sData = new WCHAR[len]; ASSERT(m_sData!=NULL); memset(m_sData,0,len*sizeof(WCHAR)); ConvertUtf8ToUnicode(s,m_sData,len); } if(!m_sData) { m_sData = new WCHAR[1]; m_sData[0] = L'\0'; } }