在不使用构造函数的情况下将WCHAR *转换为wstring

时间:2014-10-27 17:41:50

标签: c++

我有一个wchar数组我需要使用winapi函数写入数据,我希望在std::wstring中得到它,我知道std::wstring t(wText);有效,但我不能在一个if语句,因为它不会存在于该范围之外。我也不能以这种方式调用构造函数:

    WCHAR wText[256];

    std::wstring t = L"";
    if (somecondition)
    {
        t = t(wText); 
    }

我该怎么办?我希望wstring在不满足条件时等于"",当它满足时我希望将WCHAR数组放入其中。

1 个答案:

答案 0 :(得分:7)

您可以通过调用表达式中的构造函数来构造临时std::wstring对象:

t = std::wstring(wText);