Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Вопрос 19. Работа с файлами в традиционных языках сообщения




Вопрос 18. Описание данных, область их действия и правила видимости

Область видимости идентификаторов, объявленных в классах, в общем случае распространяется:

· от точки объявления до конца описания класса;

· во всех объектах объявляемого класса, расположенных как в данном модуле, так и в модулях, которые его включают в своем предложении uses;

· во всех классах-потомках объявляемого класса и их объектах, расположенных как в данном модуле, так и в модулях, которые его включают в своем предложении uses;

· во всех описаниях реализации методов объявляемого класса и его потомков, расположенных как в данном модуле, так и в модулях, которые его включают в своем предложении uses.

Дополнительно область видимости идентификаторов в классах может ограничиваться правилами области видимости в блоках, а также специальными директивами управления областью видимости published, public,protected, private и automated. Директивы public и private уже знакомы тем, кто программировал на Borland Pascal.


unit Unit1; { Модуль, в котором объявляется класс TBaseClass, }{ имеющий защищенные описания } interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class (TForm) Memo1: TMemo; Label1: TLabel; procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; TBaseClass = class protected FField: Integer; FProperty: Integer; function GetProperty: Integer; procedure SetProperty (Value: Integer); property PProperty: Integer read GetProperty write SetProperty; end; var Form1: TForm1; BaseVar: TBaseClass; implementation {$R *.dfm} function TBaseClass.GetField: Integer; begin Result:= FField end; procedure TForm1.FormCreate(Sender: TObject); var Tmp: Integer; S: String; begin BaseVar:= TBaseClass.Create; { В "своем" модуле защищенные поля, методы и свойства } { доступны также, как и public, и private-описания } with BaseVar do begin FField:= 1; SetField(2); Tmp:= GetField; Str (Tmp, S); S:= 'BaseVar.FField = ' + S; Form1.Memo1.Lines.Add(S); PProperty:= 3; Tmp:= PProperty; Str (Tmp, S); S:= 'BaseVar.PProperty = ' + S; Form1.Memo1.Lines.Add (S); end; BaseVar.Free; end;

 


 

 

Паскаль. В языке Паскаль ввод-вывод инфо осуществляяется через файловые переменные. Перед тем, как осуществлять ввод-вывод, файловая переменныя должна быть связана с конкретным внешним файлом с помощью процедуры Assign. Этим файлом может быть файл на магнитном диске, а также устройство вычислительного комплекса (клава, монитор, принтер и т.д.). затем файл должен быть открыть для чтения и/или записи. После этого можно осуществлять организацию ввода-вывода. В Turbo Pascal имеется три категории файлов: текстовые (тип Text), типизированные (filе of <тип>) и файлы без типа (file). Работа с этими категориями файлов несколько отличается др от друга. Обычно все файлы считаются файлами последовательного доступа. Однако для типизированных файлов и файлов без типа с помощью процедуры seek можно установить режим произвольного доступа. При этом нумерация компонент файла начинается с нуля. После работы с файлом он, как правило, д/б закрыт процедурой close. Это требование обязательно должно соблюдаться для файла, в который производилась запись. При работе с файлами автоматически проверяются ошибки ввода-вывода.

Основные процедуры и функции для всех типов файлов: Assign(f,name) – связывание файловой переменной с внешним файлом, ChDir(path) – изменение текущей директории, Erase(f) – уничтожение внешнего файла, getDir(n,s) – получение текущего каталога накопителя, MkDir(path) – создание каталога, rename(f,newname) – переименование внешнего файла, reset, rewrite, rmdir, eof(f). Для текстовых файлов: append, read, readln, write, writeln, eoln, seekeof(f).

Си++. Язык Си++ не обеспечивает средств для ввода-вывода. Ему это и не нужно, такие средства легко и элегантно можно создать с помощью самого языка. Стандартная библиотека потокового ввода-вывода обеспечивает гибкий и эффективный метод обработки символьного ввода целых чисел, чисел с плавающей точкой и символьных строк, а также простую модель ее расширения для обработки типов, определяеммых пользователем. Ее пользовательский интерфейс находится в «stream.h». Средства ввода-вывода «stream.h» связаны исключительно с обработкой преобразования типизированных объектов в последовательности символов и обратно.

 




Поделиться с друзьями:


Дата добавления: 2015-03-31; Просмотров: 666; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.