Содержание
- 2. Функции позиционирования в потоках данных С++ Позиционирование чтения и записи выполняется отдельными функциями (суффикс «g» означает
- 3. Что такое позиция? Что есть тип pos_type? Стандартная библиотека С++ определяет глобальный класс шаблона fpos для
- 4. Что такое относительная позиция? В версиях с относительным позиционированием смещение задается по отношению к трем позициям,
- 5. Пример позиционирования // Заголовочные файлы для ввода-вывода #include #include void printFileTwice (const char* filename) { std::ifstream
- 6. Перенаправление потоков данных Перенаправление потока данных осуществляется назначением потокового буфера. В механизме назначения потоковых буферов перенаправление
- 7. Перенаправление потоков данных - пример #include #include using namespace std; void redirect(ostream&); int main() { cout
- 8. Перенаправление потоков данных - пример void redirect (ostream& strm) { ofstream file("redirect.txt"); streambuf* strm_buffer = strm.rdbuf();
- 9. Потоки чтения и записи Обычно файл открывается для чтения/записи при помощи класса fstream: std::fstream file ("example.txt",
- 10. Потоки чтения и записи Еще вариант - создать буфер файлового потока данных и назначить его обоим
- 11. Потоки чтения и записи - пример #include #include using namespace std; void main() { // Открытие
- 12. Потоки чтения и записи - пример Хотя для чтения и записи используются два разных объекта потоков
- 13. Потоковые классы для работы со строками Механизм потоковых классов также может использоваться для чтения или записи
- 14. Классы строковых потоков данных Для строк определены следующие потоковые классы, которые явля-ются аналогами соответствующих классов файловых
- 15. . Иерархия классов cтроковых потоков данных ios_base basic_streambuf streambuf / wstreambuf basic_ios ios / wios basic_istream
- 16. Основные операции со строковыми потоками данных Основная операция реализуется функциями: str() - возвращает буфер в виде
- 17. Операции со строковыми потоками данных При создании строковых потоков данных могут задаваться флаги режима открытия файла
- 18. Правила построения пользовательских операторов ввода-вывода Правила, которые должны соблюдаться в пользовательских реализациях операторов ввода-вывода. Они продиктованы
- 19. Классы потоковых буферов – вывод символов Потоки данных не выполняют непосредственные операции чтения и записи, а
- 20. Классы потоковых буферов – ввод символов При вводе иногда требуется узнать символ без его извлечения из
- 21. Потоковые буфера – ввод символов Функция in_avail() проверяет минимальное количество доступных символов. Например, с ее помощью
- 22. Потоковые буфера – другие функции Отдельная группа функций используется для подключения объекта локального контекста, для смены
- 23. Потоковые буфера – другие функции - пояснения Функция pubsetbuf() позволяет в определенной степени управлять стратегией буферизации
- 24. Синхронизация со стандартными потоками данных С По умолчанию восемь стандартных потоков данных С++ (четыре символь-ных потока
- 25. Непосредcтвенная работа с потоковыми буферами Все функции классов basic_istream и basic_ostream, выполняющие чтение или запись символов,
- 26. Непосредcтвенная работа с потоковыми буферами ( Для этого можно определить для потоковых буферов операторы >. (1)
- 27. Непосредcтвенная работа с потоковыми буферами (>>) При получении указателя на потоковый буфер оператор >> выполняет прямое
- 28. Интернационализация С развитием глобального рынка интернaционализация стала играть более важную роль в разработке программного обеспечения. По
- 29. Поддержка разных кодировок символов Существуют два основных принципа определения кодировок, содержащих более 256 символов: много6айтовое и
- 30. Трактовки символов Различия в кодировках существенны для обработки строк и ввода-вывода. Строковые и потоковые классы специализируются
- 31. Классы трактовки символов - функции
- 32. Классы трактовки символов – функции (дальше)
- 33. Концепция локального контекста Распространенный подход к интернационализации основан на использовании специальных сред, называемых локальными контекстами (locale)
- 34. Фацеты На функциональном уровне локальный контекст делится на несколько специальных объектов. Объект, обеспечивающий работу некоторого аспекта
- 35. Категории фацетов стандартной библиотеки С++
- 36. Фацеты - использование Определение собственных версий фацетов позволяет создавать специализированные локальные контексты. В следующем примере показано,
- 37. Тесты … Вопрос: Какой вывод будет у этой программы? #include int main() { std::cout (*(new int(5)));
- 38. Тесты … Вопрос: Какой вывод будет у этой программы? #include int main() { std::cout (*(new int(5)));
- 39. Тесты … Вопрос: Что произойдет при попытке скомпилировать и исполнить нижеприведенный код? class CBase { public:
- 41. Скачать презентацию