IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

> Проблема с модулями
Informlgg
сообщение 3.12.2006 2:30
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской

Репутация: -  0  +


Есть модуль Book

unit Book;

interface
Type  str = string[20];
Type  Telement=record
        Fam : str ;
        Kniga :str ;
        Shifr : str; 
        God :integer;
        Kolvo : integer;
      end;
Type
Mas = array of Telement ;

Type
TBook= class
  PV, T : Mas ;
  m,n: integer; 

  Constructor Create(a : integer);
  Destructor Destroy;
  Procedure Poisk(familia : str);
  Procedure Insert(var k: integer; zapis : Telement);
 
  Procedure Sort(var pp:mas); 
end;

implementation

constructor TBook.Create (a:integer);
       begin
        n:=0;
        m:=a;
       end;
destructor TBook.Destroy;
       begin
{}
       end;
Procedure TBook.Sort(var pp:mas);
           var i,j,k:integer;
             x:Telement;
            begin
               for i:= 1 to m-1 do
                  begin
                    k:=i;
                    x:=pp[i];
                    for j:= i+1 to m do
                       if pp[j].fam < x.fam then
                           begin
                             k:= j ;
                             x:=pp[j];
                           end;
                       pp[k]:=pp[i];
                      pp[i]:=x;
                   end;
             end;
procedure TBook.Poisk(familia: str);
  var i,k:integer;
  begin
  k:=0;
  for i := 1 to m do
  if Pv[i].Fam=familia then
    begin
     k:=k+1;
     setlength(T,k);
     T[k]:=Pv[i];
    end;
  n:= k; // Êîëè÷åñòâî íàéäåííûõ êíèã îäíîãî àâòîðà
  end;
procedure TBook.Insert(var k:integer;zapis : Telement);
  begin
  {}
  end;

end.



так же основной модуль , кусок вырежу тока



procedure TForm1.FormCreate(Sender: TObject);
begin
StringGrid1.Cells[0,0]:='Àâòîð';
StringGrid1.Cells[1,0]:='Êíèãà';
StringGrid1.Cells[2,0]:='Øèôð';
StringGrid1.Cells[3,0]:='Ãîä';
StringGrid1.Cells[4,0]:='Êîëè÷åñòâî';
AboutBox:=TAboutBox.Create(Application);
AboutBox.ShowModal;
Te.Create(1);
end;



почему когда заходит в Create вылетает в модуле Book Access Violation когда n:=0;
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 1)
volvo
сообщение 3.12.2006 8:58
Сообщение #2


Гость






Потому, что ты инициализируешь класс, а не объект...

Te := TBook.Create(1);
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия 26.07.2025 21:59
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"