Aracılığıyla paylaş


strstreambuf::strstreambuf

Türünde bir nesne yapıları strstreambuf.

explicit strstreambuf(
   streamsize _Count = 0
);
strstreambuf(
   void ( *_Allocfunc )( size_t ),
   void ( *_Freefunc )( void * )
);
strstreambuf(
   char *_Getptr, 
   streamsize _Count,
   char *_Putptr = 0
);
strstreambuf(
   signed char *_Getptr, 
   streamsize _Count,
   signed char *_Putptr = 0
);
strstreambuf(
   unsigned char *_Getptr,
   streamsize _Count,
   unsigned char *_Putptr = 0
);
strstreambuf(
   const char *_Getptr, 
   streamsize _Count
);
strstreambuf(
   const signed char *_Getptr, 
   streamsize _Count
);
strstreambuf(
   const unsigned char *_Getptr, 
   streamsize _Count
);

Parametreler

  • _Allocfunc
    Tampon bellek ayırmak için kullanılan işlev.

  • _Count
    Göre sıralanmasını arabelleği uzunluğunu belirler _Getptr._Getptr Bir bağımsız değişken değil (ilk kurucu form), önerilen ayırma boyutunu arabellekleri için.

  • _Freefunc
    Tampon belleği serbest bırakmak için kullanılan işlev.

  • _Getptr
    Giriş için kullanılan arabellek.

  • _Putptr
    Çıkış için kullanılan arabellek.

Notlar

İlk kurucu giriş arabelleği, çıkış arabelleği ve strstreambuf ayırma denetleme tüm işaretçiler bir null işaretçi saklar.Denetlenen sıra değiştirilebilir ve uzatılamaz yapmak için saklı strstreambuf modu ayarlar.Ayrıca kabul _Count olarak önerilen ilk ayırma boyutu.

_ Onu saklar dışında kurucu ilk gibi davrananAllocfunc depolama ve _ tahsis etmek için aranacak işlev işaretçisi olarakFreefunc o depolama yer açmak için aranacak işlev işaretçisi olarak.

Üç kurucuları:

strstreambuf(char *_Getptr, streamsize count,
    char *putptr = 0);
strstreambuf(signed char *_Getptr, streamsize count,
    signed char *putptr = 0);
strstreambuf(unsigned char *_Getptr, streamsize count,
    unsigned char *putptr = 0);

Ayrıca ilk gibi davranır dışında _Getptr kontrollü dizisini saklamak için kullanılan dizi nesnesini belirler.(Bu yüzden, onu bir null işaretçi olmamalıdır.) Öğe sayısı n dizide şu şekilde belirlenir:

  • If (_Count > 0), then N is count.

  • If (_Count == 0), then N is strlen( (constchar *)_Getptr ).

  • If (_Count < 0), then N is INT_MAX.

_Putptr Bir null işaretçi yürüterek işlevi yalnızca bir giriş arabellek kurar:

setg(_Getptr, _Getptr, _Getptr + N);

Aksi takdirde yürüterek giriş ve çıkış arabelleği kurar:

setg(_Getptr, _Getptr, _Putptr);
setp(_Putptr, _Getptr + N);

In this case, _Putptrmust be in the interval _Getptr, _Getptr + N.

Son olarak, üç kurucuları:

strstreambuf(const char *_Getptr, streamsize _Count);
strstreambuf(const signed char *_Getptr, streamsize _Count);
strstreambuf(const unsigned char *_Getptr, streamsize _Count);

tümü aynı şekilde davranır:

streambuf( (char *)_Getptr, _Count );

dışında saklı modu değiştirilebilir veya uzatılamaz kontrollü sıra yapar.

Gereksinimler

Başlık: <strstream>

Namespace: std

Ayrıca bkz.

Başvuru

strstreambuf Class

iostream programlama

iostreams kuralları