table of contents
        
      
      
    - Tumbleweed 2024.07.05-1.3
 - Leap-16.0
 - Leap-15.6
 
| std::basic_filebuf::close(3) | C++ Standard Libary | std::basic_filebuf::close(3) | 
NAME¶
std::basic_filebuf::close - std::basic_filebuf::close
Synopsis¶
std::basic_filebuf<CharT, Traits>* close();
  
   If a put area exist (e.g. file was opened for writing), first calls
  
   overflow(Traits::eof()) to write all pending output to the file, including
    any
  
   unshift sequences.
  
   If the most recently called function, out of underflow(), overflow(),
    seekpos(), and
  
   seekoff(), was overflow(), then calls std::codecvt::unshift(), perhaps
    multiple
  
   times, to determine the unshift sequence according to the imbued locale, and
    writes
  
   that sequence to file with overflow(Traits::eof()).
  
   Then, closes the file as if by calling std::fclose(), regardless of whether
    any of
  
   the preceding calls succeeded or failed.
  
   If any of the function calls made, including the call to std::fclose(),
    fails,
  
   returns a null pointer. If any of the function calls made throws an
    exception, the
  
   exception is caught and rethrown after closing the file. If the file is
    already
  
   closed, returns a null pointer right away.
  
   In any case, updates the private member variable that is accessed by
    is_open().
Parameters¶
(none)
Return value¶
this on success, a null pointer on failure.
Notes¶
 close() is typically called through the destructor of
    std::basic_filebuf (which, in
  
   turn, is typically called by the destructor of std::basic_fstream.
Example¶
 This section is incomplete
  
   Reason: no example
  
   Defect reports
  
   The following behavior-changing defect reports were applied retroactively to
  
   previously published C++ standards.
  
   DR Applied to Behavior as published Correct behavior
  
   LWG 443 C++98 the file was written using changed to overflow(Traits::eof())
  
   overflow(EOF)
  
   it was unclear how to handle
  
   LWG 622 C++98 the it is rethrown after closing the
  
   exception thrown during file
  
   closing
See also¶
 is_open checks if the associated file is open
  
   (public member function)
  
   destructor destructs a basic_filebuf object and closes the file if it is open
  
   [virtual] (virtual public member function)
Category:¶
* Todo no example
| 2024.06.10 | http://cppreference.com |