Главная страница

3d1bffa1-5630-11e4-bf6e-f6d299da70eeС++ УМК (1). Глоссарий case


Скачать 1 Mb.
НазваниеГлоссарий case
Дата08.08.2020
Размер1 Mb.
Формат файлаdocx
Имя файла3d1bffa1-5630-11e4-bf6e-f6d299da70eeС++ УМК (1).docx
ТипПрограмма
#135342
страница10 из 22
1   ...   6   7   8   9   10   11   12   13   ...   22

Тақырыбы: тақырып. С++ ортасында файлдармен жұмыс. Дәріс жоспары:


    1. Файлдар мен ағындар.

    2. Тізбекті кіру мүмкіндігінің файлы.

    3. Кездейсоқ кіру файлдары


Дәрістің қысқаша мазмұны


С++ те әрбір файл байттардан тізбектелген ағыны ретінде қарастырылады. Әрбір файл немесе файл соңының маркерімен немесе қолданатын жүйедегі деректердің қызметтік құрылымына жазылған байттардың көрсетілген санымен аяқталады. Файл ашылғанда объект құрылады және ағын осы объектпен байланысады.Сонымен қатар автоматты түрде төрт объект құрылады- cin, cout, cerr және clog. Осы объектпен байланысқан ағындар программалар арасында байланыс каналдарын және жеке файлдармен немесе құрылғылармен қамтамасыз етеді.
С++ тегі файлдарды өңдеу үшін және тақырыптық файлдары қосылуы керек. файлы istream (файлдарды енгзу үшін), ofstream(файлдарға шығару үшін) және fstream(файлдарды енгізу-шығару үшін) ағындарының кластарының анықтамасын қосады. Файлдар осы ағындар кластардың объекттерін құру жолымен ашылады. Бұо ағындардың кластары сәйкес istream, ostream,iostream кластарынан алынған туынды болып табылады.Енгізу-шығару ағындарына арналған функция-элементтер, операциялар және монипуляторлар, сонымен қатар файлдардың ағындарына қолданылуы мүмкін. Файлдармен жұмыс істеу функциясының сипаттамасы stdio.h кітапханасында орналасқан.

MFC кітапханасына файлдармен жұмыс істеуді қамтамасыз ету үшін бірнеше кластар қосылған. Төменде қарастырылатын кластар файлдармен жұмыс істеуді қамтамасыз ету үшін арналған Cfile базалық класынан мұрагерленген. Файлға кіру мүмкіндігін алу үшін, алдымен CFile класының объектісін құру керек. Класс құраушысы осы объектті құрғаннан кейін файлды ашуға рұқсат береді. Бірақ файлды кешіректеу ашуға да болады, яғни Open әдісін қолдану арқылы. Open әдісінің прототипінің келесі түрлері бар:

virtual BOOL Open(LPCTSTR lpszFileName,

UINT nOpenFlags, CFileException* pError=NULL);

Файлмен жұмыс істеуді аяқтағаннан кейін, оны жабу керек. CFile класы ол үшін close арнайы әдісін иеленген. Егер CFile класының объектісі құрылса және файл ашылса, содан кейін объект жойылса, онда онымен байланысты файл автоматты түрде деструктор көмегімен жабылады.

Файлдарға кіру үшін CFile класының бірнеше әдістері арналған:CFile: Read, ReadHuge, Write, WriteHuge, Flush. Методы Read және ReadHuge әдістері алдын ала ашылған файлдағы деректерді оқу үшін арналған. 32-разрядтік операциондық жүйелерде екі әдіс те файлдан 65535-тен астам байтты бір уақытта оқи алады.

Cfile класының әдісі файлдың жолын орнықтыруға мүмкіндік береді. Бұл әдіс құрмайды, көшірмейді,файлдық атын өзгертпейді, ол тек Cfile класының объектісінде деректердің сәйкес элементін толтырады.

CMemFile классы

МҒС кітапханасына Cfile базалық класын мұрагерленген CMemFile класы кіреді. CMemFile класы файлды, операти втік жадта орналасқан, CMemFile класының объектілерімен көрсетеді,яғни CFile кластарының объектілерімен сияқты. Айырмашылығыс сонда, CmemFile объектісімен байланысқан файл дискта емес, компьютердің оперативті жадында орналасқан. Осындай файлмен операция жылдам орындалады, қарапайым файлдарға қарағанда. CmemFile класының объектілерімен жұмыс істей келе, жоғарыда көрсетілген CFile класының барлық әдістерін қолдануға болады. Деректерді сондай файлға жазуға немесе оларды санауға болады. Осы әдістерден басқа CMemFile класының құрамына қосымша әдістер қосылған.

CMemFile класының объектілерін құру үшін екі әртүрлі құраушы (конструктор) арналған. CMemFile бірінші конструктор тек бір аса қажетті емес nGrowBytes параметрін иеленген:

CMemFile(UINT nGrowBytes=1024);

Бұл құраушы оперативтік жадта бос файл автоматты түрде ашылады. Осындай файлға жазылу басталып жатқанда, автоматты түрде жадтың блогы белгіленеді. Жад алу үшін CmemFile класының әдістері malloc, realloc және free стандартты функцияларын шақырады.Егер берілген жад блогы жеткілікті емес болса, онда оның өлшемі ұлғаяды.Файлдың жад блогын ұлғайту бөлікпен CMemBytes байт бойынша жүргізіледі. CMemFile класының объектісін жойғаннан кейін қолданылған жад автоматты түрде жүйеге оралады.

Cfile базалық класынан мұрагерленген CstdioFile класы буферленген енгізу- шығаруды мәтіндік және екілік режимде қолдануға мүмкіндік береді. CStdioFile класының объектілері үшін CFile класының барлық әдістерін шақыруға болады.Мәтіндік файлға жазу үшін және оқу үшін CStdioFile класы екі жаңа әдісті қосады: ReadString және WroteStreang. Бірінші әдіс файлдан символдар қатарын оқуға мүмкіндік береді, ал екінші әдіс- жазу.
1   ...   6   7   8   9   10   11   12   13   ...   22


написать администратору сайта