Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::basic_stringbuf

      From cppreference.com
      <cpp‎ |io
       
       
       
       
      Defined in header<sstream>
      template<

         class CharT,
         class Traits=std::char_traits<CharT>,
         class Allocator=std::allocator<CharT>
      >class basic_stringbuf

         :publicstd::basic_streambuf<CharT, Traits>

      std::basic_stringbuf is astd::basic_streambuf whose associated character sequence is a memory-resident sequence of arbitrary characters, which can be initialized from or made available as an instance ofstd::basic_string.

      Typical implementations ofstd::basic_stringbuf hold an object of typestd::basic_string or equivalent resizable sequence container directly as a data member and use it as both the controlled character sequence (the array where the six pointers ofstd::basic_streambuf are pointing to) and as the associated character sequence (the source of characters for all input operations and the target for the output).

      In addition, a typical implementation holds a data member of typestd::ios_base::openmode to indicate the I/O mode of the associated stream (input-only, output-only, input/output, at-end, etc).

      If over-allocation strategy is used byoverflow(), an additional high-watermark pointer may be stored to track the last initialized character.

      (since C++11)

      Several typedefs for common character types are provided:

      Defined in header<sstream>
      Type Definition
      std::stringbufstd::basic_stringbuf<char>
      std::wstringbufstd::basic_stringbuf<wchar_t>

      Contents

      [edit]Member types

      Member type Definition
      char_typeCharT[edit]
      traits_typeTraits; the program is ill-formed ifTraits::char_type is notCharT.[edit]
      int_typeTraits::int_type[edit]
      pos_typeTraits::pos_type[edit]
      off_typeTraits::off_type[edit]
      allocator_typeAllocator[edit]

      [edit]Exposition-only members

      buf thestd::basic_string<CharT, Traits, Allocator> used as the underlying buffer
      (exposition-only member object*)
      mode thestd::ios_base::openmode of the associated stream
      (exposition-only member object*)
      initializes the input and output sequences
      (exposition-only member function*)

      [edit]Public member functions

      constructs abasic_stringbuf object
      (public member function)[edit]
      (C++11)
      assigns abasic_stringbuf object
      (public member function)[edit]
      (C++11)
      swaps twobasic_stringbuf objects
      (public member function)[edit]
      (destructor)
      [virtual](implicitly declared)
      destructs abasic_stringbuf object and the string it holds
      (virtual public member function)[edit]
      replaces or obtains a copy of the associated character string
      (public member function)[edit]
      obtains a copy of the allocator associated with the internal sequence container
      (public member function)[edit]
      (C++20)
      obtains a view over the underlying character sequence
      (public member function)[edit]

      [edit]Protected member functions

      [virtual]
      returns the next character available in the input sequence
      (virtual protected member function)[edit]
      [virtual]
      puts a character back into the input sequence
      (virtual protected member function)[edit]
      [virtual]
      appends a character to the output sequence
      (virtual protected member function)[edit]
      [virtual]
      attempts to replace the controlled character sequence with an array
      (virtual protected member function)[edit]
      [virtual]
      repositions the next pointer in the input sequence, output sequence, or both, using relative addressing
      (virtual protected member function)[edit]
      [virtual]
      repositions the next pointer in the input sequence, output sequence, or both using absolute addressing
      (virtual protected member function)[edit]

      [edit]Non-member functions

      specializes thestd::swap algorithm
      (function template)[edit]

      Inherited fromstd::basic_streambuf

      Member types

      Member type Definition
      char_typeCharT[edit]
      traits_typeTraits; the program is ill-formed ifTraits::char_type is notCharT.[edit]
      int_typeTraits::int_type[edit]
      pos_typeTraits::pos_type[edit]
      off_typeTraits::off_type[edit]

      Member functions

      [virtual]
      destructs thebasic_streambuf object
      (virtual public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      Locales
      changes the associated locale and invokesimbue()
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      obtains a copy of the associated locale
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      Positioning
      invokessetbuf()
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      invokesseekoff()
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      invokesseekpos()
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      invokessync()
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      Get area
      obtains the number of characters immediately available in the get area
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      advances the input sequence, then reads one character without advancing again
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      (removed in C++17)
      reads one character from the input sequence and advances the sequence
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      reads one character from the input sequence without advancing the sequence
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      invokesxsgetn()
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      Put area
      writes one character to the put area and advances the next pointer
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      invokesxsputn()
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      Putback
      puts one character back in the input sequence
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      moves the next pointer in the input sequence back by one
      (public member function ofstd::basic_streambuf<CharT,Traits>)[edit]

      Protected member functions

      constructs abasic_streambuf object
      (protected member function)[edit]
      (C++11)
      replaces abasic_streambuf object
      (protected member function)[edit]
      (C++11)
      swaps twobasic_streambuf objects
      (protected member function)[edit]
      Locales
      [virtual]
      reacts to a change of the associated locale
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      Positioning
      [virtual]
      replaces the buffer with user-defined array, if permitted
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      [virtual]
      repositions the next pointer in the input sequence, output sequence, or both, using relative addressing
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      [virtual]
      repositions the next pointer in the input sequence, output sequence, or both using absolute addressing
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      [virtual]
      synchronizes the buffers with the associated character sequence
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      Get area
      [virtual]
      obtains the number of characters available for input in the associated input sequence, if known
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      [virtual]
      reads characters from the associated input sequence to the get area
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      [virtual]
      reads characters from the associated input sequence to the get area and advances the next pointer
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      [virtual]
      reads multiple characters from the input sequence
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      returns a pointer to the beginning, current character and the end of the get area
      (protected member function)[edit]
      advances the next pointer in the input sequence
      (protected member function)[edit]
      repositions the beginning, next, and end pointers of the input sequence
      (protected member function)[edit]
      Put area
      [virtual]
      writes multiple characters to the output sequence
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      [virtual]
      writes characters to the associated output sequence from the put area
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      returns a pointer to the beginning, current character and the end of the put area
      (protected member function)[edit]
      advances the next pointer of the output sequence
      (protected member function)[edit]
      repositions the beginning, next, and end pointers of the output sequence
      (protected member function)[edit]
      Putback
      [virtual]
      puts a character back into the input sequence, possibly modifying the input sequence
      (virtual protected member function ofstd::basic_streambuf<CharT,Traits>)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/io/basic_stringbuf&oldid=158040"

      [8]ページ先頭

      ©2009-2025 Movatter.jp