namespace std {
class istrstream : public basic_istream<char> {
public:
explicit istrstream(const char* s);
explicit istrstream(char* s);
istrstream(const char* s, streamsize n);
istrstream(char* s, streamsize n);
virtual ~istrstream();
strstreambuf* rdbuf() const;
char* str();
private:
strstreambuf sb;
};
}
The class
istrstream
supports the reading of objects of class
strstreambuf. It supplies a
strstreambuf
object to control the associated array object
. For the sake of exposition, the maintained data is presented here as:
- sb, the strstreambuf object.
explicit istrstream(const char* s);
explicit istrstream(char* s);
Effects: Initializes the base class with
istream(&sb) and
sb with
strstreambuf(s, 0). s shall designate the first element of an
ntbs. istrstream(const char* s, streamsize n);
istrstream(char* s, streamsize n);
Effects: Initializes the base class with
istream(&sb)
and
sb with
strstreambuf(s, n). s shall designate the first element of an array whose length is
n elements, and
n shall be greater than zero
. strstreambuf* rdbuf() const;
Returns: const_cast<strstreambuf*>(&sb).