Namespaces
Variants

std:: basic_ostream

From cppreference.net
< cpp ‎ | io
定義済みヘッダー <ostream>
template <

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

> class basic_ostream : virtual public std:: basic_ios < CharT, Traits >

クラステンプレート basic_ostream は、文字ストリームに対する高レベルな出力操作のサポートを提供します。サポートされる操作には、書式化出力(例:整数値)と非書式化出力(例:生の文字と文字配列)が含まれます。この機能は、 basic_ios 基底クラスを通してアクセスされる basic_streambuf クラスによって提供されるインターフェースに基づいて実装されています。典型的な実装では、 basic_ostream には継承されていないデータメンバはありません。

cpp/io/ios base cpp/io/basic ios std-basic ostream-inheritance.svg

継承図

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

定義済みヘッダー <ostream>
定義
std::ostream std :: basic_ostream < char >
std::wostream std :: basic_ostream < wchar_t >

目次

グローバルオブジェクト

標準ライブラリによって提供される6つのグローバル basic_ostream オブジェクト:

定義済みヘッダー <iostream>
標準C出力ストリーム stdout への書き込み
(グローバルオブジェクト)
標準Cエラーストリーム stderr への書き込み(バッファリングなし)
(グローバルオブジェクト)
標準Cエラーストリーム stderr への書き込み
(グローバルオブジェクト)

メンバー型

メンバ型 定義
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 member function)
[virtual]
オブジェクトを破棄する
(virtual public member function)
(C++11)
別の basic_ostream からムーブ代入する
(protected member function)
書式化出力
書式化データを挿入する
(public member function)
非書式化出力
文字を挿入する
(public member function)
文字ブロックを挿入する
(public member function)
位置指定
出力位置指示子を返す
(public member function)
出力位置指示子を設定する
(public member function)
その他
基盤となる記憶装置と同期する
(public member function)
(C++11)
関連付けられたバッファを除くストリームオブジェクトを交換する
(protected member function)

メンバークラス

出力操作のためのストリーム準備の基本ロジックを実装する
(公開メンバークラス)

非メンバー関数

文字データを挿入、または右辺値ストリームに挿入
(関数テンプレート)
引数の フォーマット済み 表現を出力
(関数テンプレート)
引数の フォーマット済み 表現を出力(末尾に ' \n ' を追加)
(関数テンプレート)
型消去 された引数表現を使用してUnicode対応の出力を実行
(関数)
型消去 された引数表現を使用して文字データを出力
(関数)

std:: basic_ios から継承

メンバ型

メンバ型 定義
char_type CharT
traits_type Traits
int_type Traits::int_type
pos_type Traits::pos_type
off_type Traits::off_type

メンバ関数

状態関数
エラーが発生しておらず、I/O操作が利用可能かチェックする
( std::basic_ios<CharT,Traits> の公開メンバ関数)
ファイル終端に達したかチェックする
( std::basic_ios<CharT,Traits> の公開メンバ関数)
エラーが発生したかチェックする
( std::basic_ios<CharT,Traits> の公開メンバ関数)
回復不可能なエラーが発生したかチェックする
( std::basic_ios<CharT,Traits> の公開メンバ関数)
エラーが発生したかチェックする( fail() の同義語)
( std::basic_ios<CharT,Traits> の公開メンバ関数)
エラーが発生していないかチェックする( ! fail() の同義語)
( std::basic_ios<CharT,Traits> の公開メンバ関数)
状態フラグを返す
( std::basic_ios<CharT,Traits> の公開メンバ関数)
状態フラグを設定する
( std::basic_ios<CharT,Traits> の公開メンバ関数)
状態フラグを変更する
( std::basic_ios<CharT,Traits> の公開メンバ関数)
書式設定
書式情報をコピーする
( std::basic_ios<CharT,Traits> の公開メンバ関数)
埋め文字を管理する
( std::basic_ios<CharT,Traits> の公開メンバ関数)
その他
例外マスクを管理する
( std::basic_ios<CharT,Traits> の公開メンバ関数)
ロケールを設定する
( std::basic_ios<CharT,Traits> の公開メンバ関数)
関連付けられたストリームバッファを管理する
( std::basic_ios<CharT,Traits> の公開メンバ関数)
関連付けられたストリームを管理する
( std::basic_ios<CharT,Traits> の公開メンバ関数)
文字をナロー化する
( std::basic_ios<CharT,Traits> の公開メンバ関数)
文字をワイド化する
( std::basic_ios<CharT,Traits> の公開メンバ関数)

std:: ios_base から継承

メンバー関数

フォーマット
フォーマットフラグを管理する
( std::ios_base のpublicメンバ関数)
特定のフォーマットフラグを設定する
( std::ios_base のpublicメンバ関数)
特定のフォーマットフラグをクリアする
( std::ios_base のpublicメンバ関数)
浮動小数点演算の10進精度を管理する
( 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メンバクラス)

メンバー型と定数

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

以下の定数も定義されています:

定数 説明
app 各書き込み前にストリームの終端へシーク
binary バイナリモード でオープン
in 読み取り用にオープン
out 書き込み用にオープン
trunc オープン時にストリームの内容を破棄
ate オープン直後にストリームの終端へシーク
noreplace (C++23) 排他モードでオープン

(typedef)
書式フラグ型

以下の定数も定義されています:

定数 説明
dec 整数I/Oに10進基数を使用: std::dec を参照
oct 整数I/Oに8進基数を使用: std::oct を参照
hex 整数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)
ストリームの状態を表す型

以下の定数も定義されています:

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

(typedef)
シーク方向の型

以下の定数も定義されています:

定数 説明
beg ストリームの先頭
end ストリームの末尾
cur ストリーム位置指示子の現在位置

(typedef)
イベント型を指定
(列挙型)
コールバック関数型
(typedef)