std::basic_ios
來自 cppreference.com
定義於標頭檔案 <ios> |
||
template< class CharT, |
||
類 std::basic_ios
提供了與具有 std::basic_streambuf 介面的物件進行互動的工具。多個 std::basic_ios
物件可以引用同一個實際的 std::basic_streambuf
物件。
繼承圖
提供了用於常見字元型別的幾個 typedef
定義於標頭檔案
<ios> | |
型別 | 定義 |
std::ios
|
std::basic_ios<char> |
std::wios
|
std::basic_ios<wchar_t> |
目錄 |
[編輯] 成員型別
成員型別 | 定義 |
char_type
|
CharT |
traits_type
|
Traits ;如果 Traits::char_type 不是 CharT ,則程式格式錯誤。 |
int_type
|
Traits::int_type |
pos_type
|
Traits::pos_type |
off_type
|
Traits::off_type |
[編輯] Public 成員函式
構造物件 (public 成員函式) | |
[virtual] |
析構物件 (virtual public 成員函式) |
operator= |
複製賦值運算子已被刪除 (公開成員函式) |
狀態函式 | |
檢查是否沒有發生錯誤,即 I/O 操作可用 (public 成員函式) | |
檢查是否已到達檔案末尾 (public 成員函式) | |
檢查是否發生錯誤 (public 成員函式) | |
檢查是否發生不可恢復的錯誤 (public 成員函式) | |
檢查是否發生錯誤(fail() 的同義詞) (public 成員函式) | |
檢查是否沒有發生錯誤(! fail() 的同義詞)(public 成員函式) | |
返回狀態標誌 (public 成員函式) | |
設定狀態標誌 (public 成員函式) | |
修改狀態標誌 (public 成員函式) | |
格式化 | |
複製格式化資訊 (public 成員函式) | |
管理填充字元 (public 成員函式) | |
雜項 | |
管理異常掩碼 (public 成員函式) | |
設定區域設定 (public 成員函式) | |
管理關聯的流緩衝區 (public 成員函式) | |
管理繫結的流 (public 成員函式) | |
窄化字元 (public 成員函式) | |
寬化字元 (public 成員函式) |
[編輯] Protected 成員函式
初始化預設構造的 std::basic_ios (protected 成員函式) | |
(C++11) |
從另一個 std::basic_ios 移動,除了 rdbuf (protected 成員函式) |
(C++11) |
與另一個 std::basic_ios 交換,除了 rdbuf (protected 成員函式) |
替換 rdbuf 而不清除其錯誤狀態(protected 成員函式) |
繼承自 std::ios_base
成員函式
格式化 | |
管理格式標誌 ( std::ios_base 的 public 成員函式) | |
設定特定格式標誌 ( std::ios_base 的 public 成員函式) | |
清除特定格式標誌 ( std::ios_base 的 public 成員函式) | |
管理浮點運算的十進位制精度 ( std::ios_base 的 public 成員函式) | |
管理欄位寬度 ( std::ios_base 的 public 成員函式) | |
區域設定 | |
設定區域設定 ( std::ios_base 的 public 成員函式) | |
返回當前區域設定 ( std::ios_base 的 public 成員函式) | |
內部可擴充套件陣列 | |
[靜態] |
返回一個程式範圍內的唯一整數,可安全用作 pword() 和 iword() 的索引 ( std::ios_base 的 public static 成員函式) |
如有必要,調整私有儲存的大小,並訪問給定索引處的 long 元素 ( std::ios_base 的 public 成員函式) | |
如有必要,調整私有儲存的大小,並訪問給定索引處的 void* 元素 ( std::ios_base 的 public 成員函式) | |
雜項 | |
註冊事件回撥函式 ( std::ios_base 的 public 成員函式) | |
[靜態] |
設定 C++ 和 C I/O 庫是否可互操作 ( std::ios_base 的 public static 成員函式) |
成員類 | |
流異常 ( std::ios_base 的 public 成員類) | |
初始化標準流物件 ( std::ios_base 的 public 成員類) |
成員型別和常量 | |||||||||||||||||||||||||||||||||||||||
型別 | 解釋 | ||||||||||||||||||||||||||||||||||||||
流開啟模式型別 還定義了以下常量
(typedef) | |||||||||||||||||||||||||||||||||||||||
格式化標誌型別 還定義了以下常量
(typedef) | |||||||||||||||||||||||||||||||||||||||
流狀態型別 還定義了以下常量
(typedef) | |||||||||||||||||||||||||||||||||||||||
定位方向型別 還定義了以下常量
(typedef) | |||||||||||||||||||||||||||||||||||||||
指定事件型別 (enum) | |||||||||||||||||||||||||||||||||||||||
回撥函式型別 (typedef) |
[編輯] 註釋
std::basic_ios
的直接實現只儲存以下成員(它們都依賴於模板引數,因此不能作為 std::ios_base 的一部分):
實際實現因平臺而異:
Microsoft Visual Studio 只儲存這三個成員。
LLVM libc++ 儲存的成員少 1 個:它將 rdbuf
指標作為 ios_base
的 void* 成員維護。
GNU libstdc++ 儲存了 4 個額外的成員:三個快取的 facet 和一個指示填充已初始化的標誌。