Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Загальні положення. Введення і виведення в С++ організований за допомогою так званих поточних класів

Читайте также:
  1. I. Загальні положення
  2. А.2.1.1. Надання пацієнтові положення Фаулера (виконує один медичний працівник).
  3. А.2.1.1. Повернення пацієнта за допомогою підкладної пелюшки і надання положення на боці (виконується вдвох).
  4. А.2.1.11. Переміщення пацієнта із положення сидячи на ліжку з опущеними ногами на крісло-каталку, яке має нерухому підставку для ніг (виконується вдвох, пацієнт може допомагати).
  5. А.2.1.14. Переміщення пацієнта з положення сидячи на стільці в положення лежачи у ліжку (виконує один медичний працівник).
  6. А.2.1.2. Надання пацієнтові з геміплегією положення Фаулера (виконує один медичний працівник).
  7. А.2.1.2. Повертання пацієнта методом вільного перекочування і надання положення на боці (виконується вдвох).

Введення і виведення в С++ організований за допомогою так званих поточних класів, що містять дані і методи роботи з файлами по введенню/виведенню.

Потокові класи походять від спільного предка - класу ios і тому успадковують його функціональність. Щоб почати писати програму з використанням введення/виведення на мові С++, слід обов'язково виконати в програмі:

#include <fstream>

Клас fstream є нащадком класів istream і ostream. Ці ж класи є батьками класів ifstream і оfstream. Клас fstream використовується для організації введення/виведення (тобто читання-запису) в один і той же файл.

Класи ifstream, оfstream - для організації відповідно введення (читання) файлу і виведення (записи в файл). У свою чергу, екземплярами класів istream, ostream є cin, cout, cerr, за допомогою яких здійснюється так зване стандартне введення/виведення - введення зі стандартного ввідного пристрою, яким за замовчуванням є клавіатура, і виведення на стандартний вивідний пристрій, яким за замовчуванням є екран. Таким чином, включення в програму класу fstream виявляється достатнім для організації як стандартного, так і файлового введення/виведення.

Файлове введення/виведення організоване за допомогою перевизначених в потокових класах операцій включення (<<) та вилучення (>>). Раніше ми бачили, що це операції зсуву вліво і зсуву вправо бітів у змінній типу int, але в поточних класах С++ вони знайшли нову функціональність.

Щоб працювати з файлом, його спочатку слід відкрити - зв'язати зі спеціальною структурою, в якій задаються характеристики файлу (розмір буфера введення/виведення, стан файлу, останній прочитаниї запис і т. п.). Зв'язок цей виконується за допомогою функції open (), що входить в один з класів, який визначає введення/виведення (fstream, istream, ostream). Тому, щоб виконати таку функцію, слід спочатку створити екземпляр відповідного класу, щоб отримати доступ до цієї функції. Якщо ми, наприклад, хочемо виконувати виведення у файл (тобто запис у нього), то слід створити екземпляр класу ostream:

ostream exp;

і потім виконати функцію exp.open (). У дужках повинні бути вказані параметри цієї функції: ім'я файлу і спосіб відкриття файлу, в якому задаються відомості про те, як користувач збирається працювати з файлом: читати його, писати в нього або робити щось ще.

Після того як файл відкритий для читання або запису, використовують операції включення-вилучення (<<, >>). Якщо використовувати приклад з примірником exp класу ostream, то можна записати, наприклад:

exp << "рядок тексту" << i << j << endl;

Тут i, j - деякі змінні (наприклад, int i; float j;), endl - кінець виводу і перехід на новий рядок.

Після того як робота з файлом закінчено, слід закрити файл, щоб розірвати зв'язок з тією структурою, з якою файл був пов'язаний при його відкритті. Це необхідно, щоб дати можливість іншим файлам "відкриватися".

Цей акт виконується за допомогою методу close () того ж екземпляра класу, який ми створювали, щоб виконати функцію open (). У нашому випадку слід було б написати:

exp.close ();


Дата добавления: 2015-07-10; просмотров: 134 | Нарушение авторских прав


Читайте в этой же книге: МЕТОДИКА КОРРЕКЦИИ АГРЕССИВНОГО ПОВЕДЕНИЯ В ПОДРОСТКОВОМ ВОЗРАСТЕ | Мероприятия по коррекции агрессии в подростковом возрасте | Анализ проявлений различных форм агрессивности у подростков 10-15 лет | Анализ проявлений различных форм агрессивности у подростков из семей учителей, врачей, инженеров | Опросник уровня агрессивности Басса - Дарки | Опросник | Введення/виведення файлів | Функції для роботи з файлами | Приклад зі списком роззсилки | Функції стандартного введення/виведення |
<== предыдущая страница | следующая страница ==>
Лістинг 5| Робота з класом ifstream

mybiblioteka.su - 2015-2024 год. (0.007 сек.)