Определения типов <ios>
ios
ios
Поддерживает класс из старой iostream
библиотеки.
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
wios
Поддерживает класс из старой iostream
библиотеки.
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