次の方法で共有


<ios> typedefs

ios

古い iostream ライブラリの ios クラスをサポートしています。

typedef basic_ios<char, char_traits<char>> ios;

解説

この型はクラス テンプレート basic_ios の同意語で、既定の特性を持つ型 char の要素に対して特殊化されています。

streamoff

内部操作をサポートします。

#ifdef _WIN64
    typedef __int64 streamoff;
#else
    typedef long streamoff;
#endif

解説

型は符号付き整数です。 ストリームの位置指定操作でバイトオフセットを格納できるオブジェクトを表します。 この表現は、少なくとも 32 ビットあります。 これは、ストリーム内の任意のバイト位置を表すのに必ずしも十分なサイズとは限りません。 streamoff(-1) の値は、通常誤ったオフセットを示します。

streampos

バッファー ポインターまたはファイル ポインターの現在の位置を保持します。

typedef fpos<mbstate_t> streampos;

解説

型は、fpos<mbstate_t> の同意語。

// ios_streampos.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>

int main( )
{
   using namespace std;

   ofstream x( "iostream.txt" );
   x << "testing";
   streampos y = x.tellp( );
   cout << streamoff( y ) << '\n';
}
7

streamsize

ストリームのサイズを表します。

#ifdef _WIN64
    typedef __int64 streamsize;
#else
    typedef int streamsize;
#endif

解説

型は、さまざまなストリーム操作に関連する要素数のカウントを格納できるオブジェクトを記述する、符号付き整数です。 この表現は、少なくとも 16 ビットあります。 これは、ストリーム内の任意のバイト位置を表すのに必ずしも十分なサイズとは限りません。

次のプログラムをコンパイルおよび実行した後に、test.txt ファイルの中身を見て、streamsize の設定の効果を確認します。

// ios_streamsize.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>

int main( )
{
   using namespace std;
   char a[16] = "any such text";
   ofstream x( "test.txt" );
   streamsize y = 6;
   x.write( a, y );
}

wios

古い iostream ライブラリの wios クラスをサポートしています。

typedef basic_ios<wchar_t, char_traits<wchar_t>> wios;

解説

この型はクラス テンプレート basic_ios の同意語で、既定の特性を持つ型 wchar_t の要素に対して特殊化されています。

wstreampos

バッファー ポインターまたはファイル ポインターの現在の位置を保持します。

typedef fpos<mbstate_t> wstreampos;

解説

型は、fpos<mbstate_t> の同意語。

// ios_wstreampos.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>

int main( )
{
   using namespace std;
   wofstream xw( "wiostream.txt" );
   xw << L"testing";
   wstreampos y = xw.tellp( );
   cout << streamoff( y ) << '\n';
}
7