Здравствуйте уважаемые форумчане столкнулся с проблемой. Учусь в ВУзе. Дали вот такое задание:
Задача «Организация основной памяти»
* информационные объекты: страницы оперативной памяти (свойства – НомерСтраницы, Состояние)
* страницы объединяются в рамках объекта Сегмент (свойство – РазмерСегмента)
* сегменты объединяются в рамках объекта-контейнера ОсновнаяПамять (свойство – тип ОС).
Я описал классы, вот что получилось:
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | класс 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 ;
|
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | класс 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;
end ;
|
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | класс 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 ;
|
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | класс 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 вродебы исправил, а с массивом проблемы. Подскажите пожалуйста. Спасибо.