C++ 将 wstringstream 传递给另一个函数

标签 c++ function

我尝试执行以下操作:

wstring wStringStreamToWString(wstringstream uStream)
{
   wstring s(uStream.str());
   return s;
}

这给了我编译器错误

"C2248 std::basic_ios>_Elem,_Traits>::basic_ios: No access to private members whose declaration was done in std::basic_ios<_Elmen,_Trais>- class."

但是,如果我不在单独的函数中执行此操作,则它可以正常工作。 所以我想当我将 wstringstream 传递给函数时我只是犯了一个错误,但我没有看到哪个错误。

有人可以帮忙吗?

谢谢。

最佳答案

通过(const,因为它没有被修改)引用传递参数,因为流不可复制:

wstring wStringStreamToWString(wstringstream const& uStream)
{
    wstring s(uStream.str());
    return s;
}

尽管该功能就目前而言似乎完全没有必要。

关于C++ 将 wstringstream 传递给另一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16132075/

相关文章:

c++ - 可以将指向子对象的指针视为指向父对象的指针吗?

c - 从函数返回局部变量

sql - SQLFiddle 中的 Oracle 用户定义函数

在 C 中调用 showPPM 函数

python - turtle 对按键没有反应

c++ - 当类A在构造时分配内存时,在类B的构造函数中动态创建vector <class A>

c# - 读取mfc资源dll内容

时间:2019-03-08 标签:c++parasofterror

c++ - 将 LPCWSTR 转换为 LPCSTR

c - 如何在函数中检查 C 中的类型