capitolul13 - CAPITOLUL 13 Intrri/ieiri INTRRI/IEIRI 13.1....

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
CAPITOLUL 13 Intrări/ieşiri INTRĂRI/IEŞIRI 13.1. Principiile de bază ale sistemului de 13.4. Metodele clasei istream I/O din limbajul C++ 13.5. Metodele clasei ostream 13.2. Testarea şi modificarea stării unui flux 13.6. Manipulatori creaţi de utilizator 13.3. Formatarea unui flux 13.7. Fluxuri pentru fişiere 13.3.1. Formatarea prin manipulatori 13.8. Fişiere binare 13.3.2. Formatarea prin metode 13.1. PRINCIPIILE DE BAZĂ ALE SISTEMULUI DE INTRĂRI/IEŞRI DIN LIMBAJUL C++ În limbajul C++ există două sisteme de intrări/ieşiri: Unul tradiţional, moştenit din limbajul C, în care operaţiile de intrare/ieşire se realizează cu ajutorul unor funcţii din biblioteca standard a sistemului (vezi capitolul 8); Unul propriu limbajului C++, orientat pe obiecte. Sistemul de I/O orientat pe obiecte al limbajului C++ tratează în aceeaşi manieră operaţiile de I/O care folosesc consola şi operaţiile care utilizează fişiere (perspective diferite asupra aceluiaşi mecanism). La baza sistemului de I/E din C++ se află: două ierarhii de clase care permit realizarea operaţiilor de I/O; conceptul de stream (stream-ul este un concept abstract care înglobează orice flux de date de la o sursă (canal de intrare) la o destinaţie (canal de ieşiere), la un consumator. Sursa poate fi tastatura (intrarea standard), un fişier de pe disc sau o zonă de memorie. Destinaţia poate fi ecranul (ieşirea standard), un fişier de pe disc sau o zonă de memorie (figura 13.1). Avantajele utilizării stream-urilor sunt: Flexibilitate mare în realizarea operaţiilor de I/O (mai mare decât în cazul folosirii funcţiilor din C); Posibilitatea de eliminare a erorilor care apar în mod frecvent la apelul funcţiilor de I/O obişnuite, când numărul specificatorilor de format diferă de cel al parametrilor efectivi; 197 1 Figura 13.1. Stream-ul - baza sistemului de I/O Fluxuri din clasa ostream Fluxuri din clasa istream Memoria internă fişiere Fluxuri din clasa ofstream Fluxuri din clasa ifstream
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CAPITOLUL 13 Intrări/ieşiri Posibilitatea de a realiza operaţii de I/O nu numai cu date de tipuri predefinite, ci şi cu obiecte de tip abstract. Biblioteca de clase de I/O a limbajului C++ utilizează moştenirea, polimorfismul şi clasele abstracte. Ierarhia are două clase de bază (figura 13.2.): Clasa virtuală ios care oferă informaţii despre fluxurile de date (variabile de stare, metode) şi facilităţi tratarea erorilor; Clasa streambuf (clasă prietenă cu ios ), destinată operaţiilor de I/O cu format. Utilizarea ierarhiilor de clase de mai sus implică includerea headerului iostream.h . Clasa ios are un pointer către streambuf. Are date membru pentru a gestiona interfaţa cu streambuf şi pentru tratarea erorilor. Clasele derivate din clasa de bază ios : Clasa istream , care gestionează intrările: class istream:virtual public ios Clasa ostream gestionează ieşirile: class ostream: virtual public ios
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 08/10/2009 for the course SCIENCES UBC02005 taught by Professor Ionpaniat during the Spring '09 term at 東京大学.

Page1 / 18

capitolul13 - CAPITOLUL 13 Intrri/ieiri INTRRI/IEIRI 13.1....

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online