Język C++
basic_streambuf::basic_streambuf
[konstruktor] Tworzy obiekt tej klasy.Składnia
#include <streambuf>
namespace std
{
template < class CharT, class Traits = std::char_traits < CharT > >
class basic_streambuf
{
protected:
basic_streambuf();
basic_streambuf( const basic_streambuf & rhs );
};
}
Argumenty
Opis szczegółowy
Konstruktor bez argumentów tworzy obiekt tej klasy, nadaje wartości zerowe sześciu wskaźnikom zwracanym przez funkcje:
eback()
,
gptr()
,
egptr()
,
pbase()
,
pptr()
i
epptr()
oraz ustawia wartość składowej określającej ustawienia lokalne (występuje wywołanie bezargumentowego konstruktora klasy
std::locale
, co powoduje skopiowanie globalnych ustawień C++). Konstruktor kopiujący tworzy kopię obiektu na podstawie podanego argumentu
rhs, inicjalizuje sześć wymienionych wskaźników oraz obiekt ustawień lokalnych w taki sam sposób. Należy zauważyć, że w tym przypadku wskaźniki nowo utworzonego obiektu wskazują na tą samą tablicę znaków. Oba konstruktory są chronione i są wywoływane tylko przez określone klasy strumieni, takie jak
std::basic_filebuf
,
std::basic_stringbuf
lub
std::strstreambuf
.
Dodatkowe informacje
Starsze wersje standardu, niż C++11 nie określają, czy ta klasa i klasy po niej dziedziczące mogą mieć konstruktor kopiujący (
LWG issue 421). Różne implementacje bibliotek mogą zapewniać różne zachowania.
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.