爲什麼下面的第4行打印的是內存地址而不是第2行打印的原始字符串,我該如何糾正?非常感謝。C++ ostream引用
std::stringstream os (std::stringstream::in | std::stringstream::out);
std::cout << result->studentId;
os << result->studentId;
std::cout << &os << std::endl;
爲什麼下面的第4行打印的是內存地址而不是第2行打印的原始字符串,我該如何糾正?非常感謝。C++ ostream引用
std::stringstream os (std::stringstream::in | std::stringstream::out);
std::cout << result->studentId;
os << result->studentId;
std::cout << &os << std::endl;
使用str()
函數來獲取底層字符串:
std::cout << os.str() << std::endl;
以供將來參考這裏的a reference上std::stringstream
,其中包含每一個成員函數。
謝謝!我在看cplusplus.com和stdcxx.apache.org,但找不到str()。您指出的參考文獻更易於閱讀。 – rize
刪除&
操作者
std::cout << os.str() << std::endl;
它是具有或不具有 「&」 關於在 「OS」 前線4是相同的。 – rize