2016-09-12 19 views
0

LPCWSTRと値が等しいかどうかを比較したいと思います。そして、私はそれを比較する方法を理解できません。 STRING値を作成してさまざまな変換を試みましたが、何も機能しませんでした。基本的に、それは次のようになります。はSTRINGをLPCWSTRから変換します。逆も同様です。C++

request->id // some LPCWSTR value 
STRING str = "value" // String value I want to compare 
if (request->id != str) 
{ 
//Something 
} 
+0

http://stackoverflow.com/questions/27220/how-to-convert-stdstring-to-lpcwstr-in-c-unicode –

+0

「STRING」とは何ですか? – PeterT

答えて

1

MFC/ATLを有効にして、CStringオブジェクトを使用します。それはSTRINGはどちらかであるどのようなタイプの私には明確ではないですが

if (CString(request->id) != str) 

を。私は両方のためのCStringを使用します。

STRING str = "value" // String value I want to compare 
if (CString(request->id) != str) 

それとも直接リテラルを使用します。

if (CString(request->id) != "value") 
0

私はそれがこのプロセスを使用して動作するようになってしまいました。

LPCWSTR lpc = L "STRING"; wcscmpの(LPCWSTR、LPCWSTR)は

1

は、あなたが仕事やMultiByteToWideChar() WinAPIの関数を使用してバッファに文字列をコピーする.c_str()メンバ関数を持っている場合にはstd::wstring代わりのstdの種類::文字列を使用してください。

関連する問題