これが私のコードです:
string str = "Hello!";
TCHAR* tch = new TCHAR[str.length() + 1];
mbstowcs_s(NULL, tch, _tcslen(tch), str.c_str(), str.length());
// Use tch for other stuff...
delete [] tch; // Gives debug heap corruption assertion
何らかの理由で、このコードでヒープ破損アサーションが発生しています。何が悪いのか頭を悩ませています。文字列と tchars の類似点と相違点に関する適切なドキュメントが見つかりません。これは、自分でこれを理解するのに役立ちます。