Показать сообщение отдельно
  #1  
Старый 03.11.2013, 17:59
Deman1986 Deman1986 вне форума
Прохожий
 
Регистрация: 03.11.2013
Сообщения: 32
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Описание классов в Delphi

Здравствуйте уважаемые форумчане столкнулся с проблемой. Учусь в ВУзе. Дали вот такое задание:
Задача «Организация основной памяти»
* информационные объекты: страницы оперативной памяти (свойства – НомерСтраницы, Состояние)
* страницы объединяются в рамках объекта Сегмент (свойство – РазмерСегмента)
* сегменты объединяются в рамках объекта-контейнера ОсновнаяПамять (свойство – тип ОС).
Я описал классы, вот что получилось:
Код:
 класс TMemory
type
	TMemory = class(TObject)
private
// поля
	FNumber: integer; // приватное поле
	FPriznak: Boolean; // приватное поле
	public
// Конструктор
Constructor Create (const Number: integer; Priznak: boolean);
// методы чтения и записи свойств
	function GetNumber: integer; // получаем номер
	procedure SetNumber (const Value: integer); // задаём номер
	function GetPriznak: boolean; // получаем состояние
	procedure SetPriznak (const Value: boolean); // задаём состояние
end;
Код:
класс TElement
type
TElement = class(TObject)
private
// поля
	FMemory: TMemory; // приватное поле
	FNext: TElement; // приватное поле, указатель на следующий элемент
	public 
// конструкторы и деструкторы
	constructor Create (const Memory: TMemory);
	destructor Destroy; override;
// методы чтения и записи свойств
	function GetNext: TElement; // получаем следующий элемент стека
	procedure SetNext (const Value: TElement); // задаём следующий элемент стека
	function GetMemory: TMemory; // возвращаем значение поля FMemory
end;
Код:
класс TSegment
type
	TSegment = class(TObject)
private
// поля
	FFirst: byte; // приватное поле, вершинный элемент
	FNum: integer; // приватное поле, номер сегмента
	public
// конструкторы и деструкторы
	constructor Create (const Num: integer);
	destructor Destroy; override;
// методы чтения и записи свойств
	function GetFirst; TSegment; // получаем головной элемент
	function GetNum: integer; // получаем номер сегмента
	procedure SetNum (const Value: integer); // задаем номер сегмента
// методы
	procedure AddMemory (const Memory: TMemory); // добавляем элемент в стек
	function DelFirst: TElement; // удаляем вершинный элемент
	procedure Clear; // очищяем стек
end;
Код:
класс TSomeMemory
type
	TSomeMemory = class(TObject)
	Private
// поля
	FSome: array of  TMemory (динамический массив экземпляров класса TMemory)
	FCount: real (приватное поле, количество сегментов)
// конструкторы и деструкторы
	Constructor Create (initianCount)
	Destructor Destroy; override
// методы получения и установки значений свойств
	Function GetMemory (index: integer): TMemory (возвращаем объект класса TMemory)
	Function GetCount: integer (получаем количество сегментов)
// методы
	Function SegmentNO (No: integer):TSegment
	Function AddSL (No: integer): integer (добавляем в массив сегмент)
	Function DeleteSL (No: integeer): integer (удаляем из массива сегмент)
	Procedure SaveFile (const FileName: string) (сохраняем список в файле)
	Procedure LoadFile (const FileName: string) (загружаем список из файла)
	function WinInfo(Root_Key: HKEY; Key_Open, Key_Read: string): string
WinVers = 'Software\Microsoft\Windows\CurrentVersion' (читаем всё из реестра)
Преподаватель прокоментировал следующие ошибки: 1.Класс TMemory: название класса не соответствует его назначению
2.Класс TSegment: поле FFirst имеет неправильный тип
3.Класс TSomeMemory: массив имеет неправильный тип
первые 2 вродебы исправил, а с массивом проблемы. Подскажите пожалуйста. Спасибо.
Ответить с цитированием