System::IO::BasicSTDOStreamWrapper class
BasicSTDOStreamWrapper class
Представляет обёртку, похожую на System.IO.Stream, для std::basic_ostream и его производных объектов. Объекты этого класса должны создаваться только с помощью функции System::MakeObject(). Никогда не создавайте экземпляр этого типа в стеке или с помощью оператора new, так как это приведёт к ошибкам времени выполнения и/или сбоям утверждений. Всегда оборачивайте этот класс в указатель System::SmartPtr и используйте этот указатель для передачи его в функции в качестве аргумента.
template<typename T,typename>class BasicSTDOStreamWrapper : public virtual System::IO::STDIOStreamWrapperBase<T>
Методы
| Метод | Описание |
|---|
| BasicSTDOStreamWrapper(std::basic_ostream<char_type, traits_type>&, STDIOStreamWrappingMode) | Создаёт новый экземпляр BasicSTDOStreamWrapper. |
| BasicSTDOStreamWrapper(const BasicSTDOStreamWrapper&) | Конструктор копирования. Удалён. |
| Flush() override | Очищает буферы этого потока и записывает все буферизованные данные в базовое хранилище. |
| operator=(const BasicSTDOStreamWrapper&) | Оператор копирующего присваивания. Удалён. |
| Read(const ArrayPtr<uint8_t>&, int32_t, int32_t) override | Если режим обёртки бинарный, читает указанное количество байтов из потока, иначе читает указанное количество символов и преобразует их в тип uint8_t. Записывает результат чтения в указанный массив байтов. Не поддерживается! |
| Read(const System::Details::ArrayView<uint8_t>&, int32_t, int32_t) override | Считывает указанное количество байтов из потока и записывает их в указанный массив байтов. |
| ReadByte() override | Если режим обёртки бинарный, читает один байт из хранилища последнего декодированного символа, иначе читает один символ из потока и преобразует его в тип uint8_t. Не поддерживается! |
| SetLength(int64_t) override | Устанавливает длину потока, представленного текущим объектом. |
| Write(const ArrayPtr<uint8_t>&, int32_t, int32_t) override | Если режим обёртки бинарный, записывает в поток указанный поддиапазон байтов из указанного массива байтов, иначе преобразует указанный поддиапазон байтов из указанного массива байтов в тип char_type и затем записывает результат в поток. |
| Write(const System::Details::ArrayView<uint8_t>&, int32_t, int32_t) override | Записывает указанный поддиапазон байтов из указанного массива байтов в поток. |
| WriteByte(uint8_t) override | Если режим обёртки бинарный, записывает в поток указанное беззнаковое 8-битное целое значение, иначе преобразует его в тип char_type и затем записывает результат в поток. |
Поля
| Поле | Описание |
|---|
| static Null | Поток без базового хранилища. |
Typedefs
См. также