⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 strstream

📁 ARM Linux Tool 各种代码包括MTD
💻
字号:
/* * Copyright (c) 1998 * Silicon Graphics Computer Systems, Inc. * * Permission to use, copy, modify, distribute and sell this software * and its documentation for any purpose is hereby granted without fee, * provided that the above copyright notice appear in all copies and * that both that copyright notice and this permission notice appear * in supporting documentation.  Silicon Graphics makes no * representations about the suitability of this software for any * purpose.  It is provided "as is" without express or implied warranty. */// WARNING: The classes defined in this header are DEPRECATED.  This// header is defined in section D.7.1 of the C++ standard, and it// MAY BE REMOVED in a future standard revision.  You should use the// header <sstream> instead.#ifndef __SGI_STL_STRSTREAM#define __SGI_STL_STRSTREAM#include "backward_warning.h"#include <bits/std_iosfwd.h>#include <bits/std_ios.h>#include <bits/std_istream.h>#include <bits/std_ostream.h>#include <bits/std_string.h>namespace std{//----------------------------------------------------------------------// Class strstreambuf, a streambuf class that manages an array of char.// Note that this class is not a template.class strstreambuf : public basic_streambuf<char, char_traits<char> >{public:                         // Types.  typedef char_traits<char>              _Traits;  typedef basic_streambuf<char, _Traits> _Base;public:                         // Constructor, destructor  explicit strstreambuf(streamsize __initial_capacity = 0);  strstreambuf(void* (*__alloc)(size_t), void (*__free)(void*));  strstreambuf(char* __get, streamsize __n, char* __put = 0);  strstreambuf(signed char* __get, streamsize __n, signed char* __put = 0);  strstreambuf(unsigned char* __get, streamsize __n, unsigned char* __put=0);  strstreambuf(const char* __get, streamsize __n);  strstreambuf(const signed char* __get, streamsize __n);  strstreambuf(const unsigned char* __get, streamsize __n);  virtual ~strstreambuf();public:                         // strstreambuf operations.  void freeze(bool = true);  char* str();  int pcount() const;protected:                      // Overridden virtual member functions.  virtual int_type overflow(int_type __c  = _Traits::eof());  virtual int_type pbackfail(int_type __c = _Traits::eof());  virtual int_type underflow();  virtual _Base* setbuf(char* __buf, streamsize __n);  virtual pos_type seekoff(off_type __off, ios_base::seekdir __dir,                           ios_base::openmode __mode                                      = ios_base::in | ios_base::out);  virtual pos_type seekpos(pos_type __pos, ios_base::openmode __mode                                      = ios_base::in | ios_base::out);private:                        // Helper functions.  // Dynamic allocation, possibly using _M_alloc_fun and _M_free_fun.  char* _M_alloc(size_t);  void  _M_free(char*);  // Helper function used in constructors.  void _M_setup(char* __get, char* __put, streamsize __n);private:                        // Data members.  void* (*_M_alloc_fun)(size_t);  void  (*_M_free_fun)(void*);  bool _M_dynamic  : 1;  bool _M_frozen   : 1;  bool _M_constant : 1;};//----------------------------------------------------------------------// Class istrstream, an istream that manages a strstreambuf.class istrstream : public basic_istream<char>{public:  explicit istrstream(char*);  explicit istrstream(const char*);  istrstream(char* , streamsize);  istrstream(const char*, streamsize);  virtual ~istrstream();  strstreambuf* rdbuf() const;  char* str();private:  strstreambuf _M_buf;};//----------------------------------------------------------------------// Class ostrstreamclass ostrstream : public basic_ostream<char>{public:  ostrstream();  ostrstream(char*, int, ios_base::openmode = ios_base::out);  virtual ~ostrstream();  strstreambuf* rdbuf() const;  void freeze(bool = true);  char* str();  int pcount() const;private:  strstreambuf _M_buf;};//----------------------------------------------------------------------// Class strstreamclass strstream : public basic_iostream<char>{public:  typedef char                        char_type;  typedef char_traits<char>::int_type int_type;  typedef char_traits<char>::pos_type pos_type;  typedef char_traits<char>::off_type off_type;  strstream();  strstream(char*, int, ios_base::openmode = ios_base::in | ios_base::out);  virtual ~strstream();  strstreambuf* rdbuf() const;  void freeze(bool = true);  int pcount() const;  char* str();private:  strstreambuf _M_buf;};} // namespace std#endif /* __SGI_STL_STRSTREAM */// Local Variables:// mode:C++// End:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -