table of contents
        
      
      
    - Tumbleweed 2024.07.05-1.3
 - Leap-16.0
 - Leap-15.6
 
| std::basic_ios::rdbuf(3) | C++ Standard Libary | std::basic_ios::rdbuf(3) | 
NAME¶
std::basic_ios::rdbuf - std::basic_ios::rdbuf
Synopsis¶
 std::basic_streambuf<CharT, Traits>* rdbuf() const;
    (1)
  
   std::basic_streambuf<CharT, Traits>* rdbuf(
    std::basic_streambuf<CharT, (2)
  
   Traits>* sb );
  
   Manages the associated stream buffer.
  
   1) Returns the associated stream buffer. If there is no associated stream
    buffer,
  
   returns a null pointer.
  
   2) Sets the associated stream buffer to sb. The error state is cleared by
    calling
  
   clear(). Returns the associated stream buffer before the operation. If there
    is no
  
   associated stream buffer, returns a null pointer.
Parameters¶
sb - stream buffer to associate to
Return value¶
 The associated stream buffer, or a null pointer if there was no
    associated stream
  
   buffer.
Exceptions¶
May throw implementation-defined exceptions.
Example¶
// Run this code
  
   #include <iostream>
  
   #include <sstream>
  
   int main()
  
   {
  
   std::ostringstream local;
  
   auto cout_buff = std::cout.rdbuf(); // save pointer to std::cout buffer
  
   std::cout.rdbuf(local.rdbuf()); // substitute internal std::cout buffer with
  
   // buffer of 'local' object
  
   // now std::cout work with 'local' buffer
  
   // you don't see this message
  
   std::cout << "some message";
  
   // go back to old buffer
  
   std::cout.rdbuf(cout_buff);
  
   // you will see this message
  
   std::cout << "back to default buffer\n";
  
   // print 'local' content
  
   std::cout << "local content: " << local.str() <<
    "\n";
  
   }
Output:¶
 back to default buffer
  
   local content: some message
See also¶
 set_rdbuf replaces the rdbuf without clearing its error state
  
   (protected member function)
| 2024.06.10 | http://cppreference.com |