cppstd > basic_ios

basic_ios クラステンプレート

ヘッダ

#include <ios>

定義

template <class charT, class traits = char_traits<charT> >
class basic_ios
{
public:
    // 型定義
    typedef charT char_type;
    typedef typename traits::int_type int_type;
    typedef typename traits::pos_type pos_type;
    typedef typename traits::off_type off_type;
    typedef traitstraits_type;

    // I/O状態
    void clear(iostate state = goodbit);
    void setstate(iostate state);

    const iostate rdstate() const;
    bool good() const;
    bool eof() const;
    bool fail() const;
    bool bad() const;
    operator void*();
    const bool operator!();

    // 例外マスク
    iostate exceptions() const;
    void exceptions(iostate except);

    // 構築・破棄
public:
    explicit basic_ios(basic_streambuf<charT,tratis>* sb);
    virtual ~basic_ios();
protected:
    basic_ios();
    void init(basic_streambuf<charT,tratis>* sb);
public:

    // 出力ストリームの結合
    basic_ostream<charT,traits>* tie() const;
    basic_ostream<charT,traits>* tie(basic_ostream<charT,traits>* tiestr);

    // ストリームバッファ
    basic_streambuf<charT,traits>* rdbuf() const;
    basic_streambuf<charT,traits>* rdbuf(basic_streambuf<charT,traits>* sb);

    // フォーマット
    copyfmt(const basic_ios& rhs);
    char_type fill() const;
    char_type fill(char_type ch);

    // ロケール
    locale imbue(const locale& loc);

    // ワイド文字変換
    char narrow(char_type c, char deflt) const;
    char_type widen(char c) const;
};

クラスの説明

TBD

このクラスの各々のオブジェクトは以下の情報を持つ。
項目 説明 備考
ストリームバッファ basic_streambuf<char_type,traits_type> 入出力処理を行う
I/O状態 iostate 現在のI/O状態を示す
例外マスク iostate 例外をスローする条件を設定する
フォーマットフラグ fmtflags 入出力のフォーマット方法を示す (※1)
パディング文字 char_type 出力のパディングに使用する文字を示す
精度 streamsize 出力用の浮動小数点をフォーマットするために使用される精度を示す (※1)
最小フィールド幅 streamsize 入出力の最小のフィールド幅を示す (※1)
ロケール locale ストリームのロケールを示す (※1)
結合出力ストリーム basic_ostream<char_type,traits_type> 結合する出力ストリームを示す
記憶域 union { long, void* }[] オブジェクトのユーザが自由に使用できる領域 (※1)
コールバック event_callback[] このオブジェクトに対し、あるイベントが発生したときに呼び出される関数群 (※1)
(※1) 基底クラスで定義されている。
最終更新:2008年03月09日 09:29
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。