Dostęp do pól klasy

0

Witam, piszę program w którym jest zdefiniowana klasa Wypozyczenie:

type
  TWypozyczenie = class

  private
    
  public
    ID_wypo, ID_klie, max : integer;
    ID_publ : string;
    datap: TDate;
    datak: TDate;
    oddane : bool;
    constructor StworzWypozyczenie(ID_kl : integer; ID_pu : string);
    overload;
    constructor StworzWypozyczenie(ID_pu : string); overload;
    procedure Wydaj();
    procedure Oddaj();

  end; 

Ma ona dwa konstruktory, jeden z nich wygląda tak:

 
onstructor TWypozyczenie.StworzWypozyczenie(ID_kl: integer; ID_pu: string);
begin
  id_klie := ID_kl; id_publ := ID_pu;
end;

Kiedy próbuję go wywołać z funkcji:

procedure TFormNoweWypozyczenie.BNoweWypozyczenieClick(Sender: TObject);
begin
  //(..)
  //2. Stworzenie obiektu
  Wypozyczamy.StworzWypozyczenie(klient, TBid_publ.Text);
  //(..)
end;
 

Podczas testowania działania funkcji wyskakuje mi błąd EAccessViolation i zaznacza się jedyna linia konstruktora.
Myślałem, że zmienne i z public i z private są dostępne dla procedur wewnętrznych obiektu, ale nawet jak przeniosłem deklaracje wszystkich pól do public, błąd nadal występuje.

Jest to moje pierwsze podejście do obiektowości od jakiegoś czasu, poza tym w Delphi programuję od niecałych 2 tygodni, więc wybaczcie jeśli popełniłem jakiś strasznie podstawowy błąd :)

0
  1. KONSTRUKTOR SIĘ NAZYWA CREATE A NIE ŻADNE STWORZWYPOZYCZENIE!!!!!!
  2. obiektu się tak nie tworzy! To są podstawy - przerób jakiś kurs najpierw
0

Wypozyczamy.StworzWypozyczenie(klient, TBid_publ.Text);

prawidłowa składnia wywołania konstruktora to:

Wypozyczamy:=TWypozyczenie.StworzWypozyczenie(klient, TBid_publ.Text);
0

Azarien, dzięki za odpowiedź, a Misiekd nie podłamuj się moim poziomem umiejętności, jak już wspomniałem, Delphi dopiero zaczynam, więc co jakiś czas popełniam kategoryczne błędy, niestety nie wszystkie jestem w stanie rozwiązać sam i czasem muszę zrobić z siebie idiotę przed ludźmi :)
A nazwę konstruktora inną niż Create zobaczyłem właśnie w jednym z kursów Delphi, choć najwyraźniej źle zinterpretowałem to co zobaczyłem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1