OT: constructor Pascal a C++

Milan Kratochvíl krata.milan na seznam.cz
Středa Květen 25 18:36:54 CEST 2016


Zdravím všechny,
musím přepsat program z pascalu do c++ protože novější knihovny má 
dodavatel pouze pro c++. Dělám v c pro jednočipy a tak jsem si myslel že 
to nebude tak strašný ale narazil jsem docela na začátku.
V pascalu mám třídu TMereni, kterou vytvořím v události OnCreate od 
hlavního formuláře a vše je funkční.

... OnCreate...
...
MereniA:= TMereni.Create();
MereniB:= TMereni.Create();
.....

V C++ mám také vytvoření v OnCreate a překlad je bez chyb, ale běh 
programu skončí s hláškou access violation právě při volání constructoru.
Jen dodám že Mereni mam definováno v části Public ve formuláři jako 
TMereni* Mereni; a vnitřky funkcí jsou zatím prázdné, protože jsem se 
dál nedostal.


Nevíte někdo náhodou co by mohlo být blbě? zkoušel jsem hledat ale asi 
se ggla špatně ptám. Používám Delphi 2007 a C++Builder 2007

... OnCreate...
...
MereniA = new TMereni;
MereniB = new TMereni;
.....



TMereni = class
     constructor create();
     destructor destroy();
   private
      FMereni1 : integer;
      FMereni2 : integer;
      FMereni3 : integer;
      FPrepocet1 : real;
      FPrepocet2 : real;
      FPrepocet3 : real;
   public
      property Mereni1 : integer read FMereni1;
      property Mereni2 : integer read FMereni2;
      property Mereni3 : integer read FMereni3;
      property Prepocet1 : real read FPrepocet1;
      property Prepocet2 : real read FPrepocet2;
      property Prepocet3 : real read FPrepocet3;
      procedure Merime1();
      procedure Merime2();
      procedure Merime3();
      procedure Prepocet();
end;



class TMereni
{
   public:
     TMereni (void);
     ~TMereni (void);
   private:
      int FMereni1;
      int FMereni2;
      int FMereni3;
      float FPrepocet1;
      float FPrepocet2;
      float FPrepocet3;
   public
      __property int Mereni1 = { read=FMereni1};
      __property int Mereni2 = { read=FMereni2};
      __property int Mereni3 = { read=FMereni3};
      __property float Prepocet1 = { read=FPrepocet1};
      __property float Prepocet2 = { read=FPrepocet2};
      __property float Prepocet3 = { read=FPrepocet3};
      void __fastcall Merime1(void);
      void __fastcall Merime2(void);
      void __fastcall Merime3(void);
      void __fastcall Prepocet(void);
end;


Díky za nakopnutí.
Milan


Další informace o konferenci Hw-list