名前空間
変種
操作

std::basic_ios

From cppreference.com
< cpp‎ | io
 
 
 
 
ヘッダ<ios>で定義
template<

    class CharT,
    class Traits = std::char_traits<CharT>
> class basic_ios

    : public std::ios_base

クラスstd::basic_iosは、std::basic_streambufインターフェイスを持つオブジェクトとの相互作用のための機能を提供します。複数のstd::basic_iosオブジェクトが、1つの実際のstd::basic_streambufオブジェクトを参照できます。

cpp/io/ios basestd-basic ios-inheritance.svg

継承図

一般的な文字型のためにいくつかの typedef が提供されています

ヘッダ<ios>で定義
定義
std::ios std::basic_ios<char>
std::wios std::basic_ios<wchar_t>

目次

[編集] メンバ型

メンバ型 定義
char_type CharT[編集]
traits_type Traits; Traits::char_typeCharT でない場合、プログラムは不適格となる。[編集]
int_type Traits::int_type[編集]
pos_type Traits::pos_type[編集]
off_type Traits::off_type[編集]

[編集] 公開メンバ関数

オブジェクトを構築する
(公開メンバ関数) [編集]
オブジェクトを破棄する
(仮想公開メンバ関数) [編集]
operator=
コピー代入演算子は削除されている
(public member function)
状態関数
エラーが発生していないか、すなわちI/O操作が可能かを確認する
(公開メンバ関数) [編集]
ファイルの終端に達したかを確認する
(公開メンバ関数) [編集]
エラーが発生したかを確認する
(公開メンバ関数) [編集]
回復不能なエラーが発生したかを確認する
(公開メンバ関数) [編集]
エラーが発生したかを確認する (fail() のシノニム)
(公開メンバ関数) [編集]
エラーが発生していないかを確認する (!fail() のシノニム)
(公開メンバ関数) [編集]
状態フラグを返す
(公開メンバ関数) [編集]
状態フラグを設定する
(public member function) [編集]
状態フラグを変更する
(public member function) [編集]
書式化
書式化情報をコピーする
(公開メンバ関数) [編集]
フィル文字を管理する
(公開メンバ関数) [編集]
その他
例外マスクを管理する
(公開メンバ関数) [編集]
ロケールを設定する
(公開メンバ関数) [編集]
関連付けられたストリームバッファを管理する
(公開メンバ関数) [編集]
結びつけられたストリームを管理する
(公開メンバ関数) [編集]
文字をナロー化する
(公開メンバ関数) [編集]
文字をワイド化する
(公開メンバ関数) [編集]

[編集] 保護メンバ関数

デフォルトコンストラクトされたstd::basic_iosを初期化します。
(保護メンバ関数) [編集]
(C++11)
rdbufを除き、別のstd::basic_iosから移動します。
(保護メンバ関数) [編集]
(C++11)
rdbufを除き、別のstd::basic_iosとスワップします。
(保護メンバ関数) [編集]
エラー状態をクリアせずにrdbufを置き換えます。
(保護メンバ関数) [編集]

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 メンバ関数) [編集]
内部拡張可能配列
[static]
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 メンバクラス) [編集]

メンバ型と定数

説明
ストリームオープンモードの型

以下の定数も定義される

Constant 説明[編集]
app 各書き込みの前にストリームの末尾にシークする[編集]
2進 バイナリモードで開く[編集]
in 読み取り用に開く[編集]
out 書き込み用に開く[編集]
trunc オープン時にストリームの内容を破棄する[編集]
ate オープン直後にストリームの末尾にシークする[編集]
noreplace (C++23) 排他モードで開く[編集]

(typedef) [編集]
書式化フラグの型

以下の定数も定義される

Constant 説明[編集]
10進 整数I/Oに10進基数を使用する: std::dec を参照[編集]
8進 整数I/Oに8進基数を使用する: std::oct を参照[編集]
16進 整数I/Oに16進基数を使用する: std::hex を参照[編集]
basefield dec | oct | hex。マスキング操作に便利[編集]
left 左寄せ(右側にフィル文字を追加): std::left を参照[編集]
right 右寄せ(左側にフィル文字を追加): std::right を参照[編集]
internal 内部寄せ(内部の指定された点にフィル文字を追加): std::internal を参照[編集]
adjustfield left | right | internal。マスキング操作に便利[編集]
scientific 浮動小数点数型を科学表記法、または fixed と組み合わせた場合は16進表記で生成する: std::scientific を参照[編集]
fixed 浮動小数点数型を固定小数点表記法、または scientific と組み合わせた場合は16進表記で生成する: std::fixed を参照[編集]
floatfield scientific | fixed。マスキング操作に便利[編集]
boolalpha bool 型を英数字形式で挿入および抽出する: std::boolalpha を参照[編集]
showbase 整数の出力に対して数値基数を示す接頭辞を生成し、通貨I/Oで通貨記号を要求する: std::showbase を参照[編集]
showpoint 浮動小数点数の出力に対して小数点文字を無条件に生成する: std::showpoint を参照[編集]
showpos 非負の数値出力に対して + 文字を生成する: std::showpos を参照[編集]
skipws 特定の入力操作の前に先頭の空白をスキップする: std::skipws を参照[編集]
unitbuf 各出力操作の後に出力をフラッシュする: std::unitbuf を参照[編集]
uppercase 特定の出力操作で特定の小文字を対応する大文字に置き換える: std::uppercase を参照[編集]

(typedef) [編集]
ストリームの状態の型

以下の定数も定義される

Constant 説明[編集]
goodbit エラーなし[編集]
badbit 回復不能なストリームエラー[編集]
failbit 入出力操作が失敗した(書式化または抽出エラー)[編集]
eofbit 関連付けられた入力シーケンスがファイルの終端に達した[編集]

(typedef) [編集]
シーク方向の型

以下の定数も定義される

Constant 説明[編集]
beg ストリームの先頭[編集]
end ストリームの末尾[編集]
cur ストリーム位置インジケータの現在位置[編集]

(typedef) [編集]
イベントの種類を指定する
(enum) [編集]
コールバック関数の型
(typedef) [編集]

[編集] 注釈

std::basic_iosの直接的な実装は、以下のメンバのみを格納します(これらはすべてテンプレートパラメータに依存するため、std::ios_baseの一部にはできません)。

  • フィル文字(fill()を参照)
  • ティードストリームポインタ(tie()を参照)
  • 関連付けられたストリームバッファポインタ(rdbuf()を参照)。

実際の С++ 実装は異なります。

Microsoft Visual Studio は、これら3つのメンバのみを格納します。

LLVM libc++ は1つ少ないメンバを格納します:rdbufポインタをios_basevoid*メンバとして保持します。

GNU libstdc++ は4つの追加メンバを格納します:3つのキャッシュされたファセットと、フィルが初期化されたことを示すフラグ。

English 日本語 中文(简体) 中文(繁體)