这个可以正常运行:
我使用g++ 4.8.1 (MinGW-W64).
有没有办法实现这个(即使用未命名的临时变量编写此类代码)?(以上代码有点简化,实际代码涉及除int以外的参数使用<<。)
stringstream temp;
temp << i;
result_stream << transform(temp.str());
(transform
是一个接受 string
并返回 string
的函数;i
是一个 int
). 然而,我试图让 C++11 创建一个没有名称的临时对象却失败了:
result_stream << transform((stringstream() << i).str());
我原本以为这个方法是可行的,因为第二个<<
操作符只会返回第一个参数,然后我可以在这个参数上使用str()
。但是我遇到了以下错误:
error: 'class std::basic_ostream<char>' has no member named 'str'
我使用g++ 4.8.1 (MinGW-W64).
有没有办法实现这个(即使用未命名的临时变量编写此类代码)?(以上代码有点简化,实际代码涉及除int以外的参数使用<<。)