Тот факт, что функция static
здесь не имеет значения. Вы могли бы вернуть s.c_str()
, если бы переменная s
была static
, однако это было бы очень странно, поскольку s
инициализировался бы только при первом вызове функции.
Моя рекомендация: просто верните std::wstring
по значению.
std::wstring concatenate(const wchar_t* ws1, const wchar_t* ws2) {
std::wstring s(ws1);
s += std::wstring(ws2);
return s;
}