程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++ 頭文件系列(sstream)

C++ 頭文件系列(sstream)

編輯:關於C++

C++ 頭文件系列(sstream)。本站提示廣大學習愛好者:(C++ 頭文件系列(sstream))文章只能為提供參考,不一定能成為您想要的結果。以下是C++ 頭文件系列(sstream)正文


1. 簡介

這個頭文件主要定義了基於字符串類(string類)的流的4個模版:

  • basic_stringbuf
  • basic_istringstream
  • basic_ostringstream
  • basic_stringstream

和8個類型:

  • istringstream
  • ostringstream
  • stringstream
  • stringbuf
  • wistringstream
  • wostringstream
  • wstringstream
  • wstringbuf
2. basic_stringbuf模版

basic_stringbuf 繼承自basic_streambuf,由於它們的功能非常相似,所以它自身僅定義了少量的幾個公有函數和虛函數(虛函數不再贅述,詳見此博客virtual函數小節)。

2.1 公有函數
  • str : 獲取、設置字符串緩沖區的內容。
  • operator =(移動語義) : 移動語義的賦值運算符。
  • swap : 交換兩個對象內容。
2.2 全局模版函數
  • swap : 基本上每個標准類都回提供swap的兩種形式:成員函數 和 全局模版。
3. 基於basic_stringbuf的流類
  1. basic_istringstream內部使用basic_stringbuf來存儲和控制字符串內容。 它 繼承自basic_istream。
  2. basic_ostringstream內部使用basic_stringbuf來存儲和控制字符串內容。 它繼承自basic_ostream。
  3. basic_ostringstream內部也使用basic_stringbuf來存儲和控制字符串內容。 它繼承自basic_iostream。

因為很多功能都由基類提供了(面向對象的可重用性),這些模版都只定義了幾個相同的函數。

3.1 公有函數
  • rdbuf : 返回內部的basic_stringbuf對象指針。
  • str : 返回、設置字符串內容。
  • operator = (移動語義)
  • swap
3.2 全局模版函數
  • swap
4 typedefs

窄字符版本(char):

  • typedef basic_istringstream< char > istringstream;
  • typedef basic_ostringstream< char > ostringstream;
  • typedef basic_stringstream< char > stringstream;
  • typedef basic_stringbuf< char > stringbuf;

寬字符版本(wchar_t):

  • typedef basic_istringstream< wchar_t > wistringstream;
  • typedef basic_ostringstream< wchar_t > wostringstream;
  • typedef basic_stringstream< wchar_t > wstringstream;
  • typedef basic_stringbuf< wchar_t > wstringbuf;



  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved