Srodne teme
07.04.2002. GL problem
28.08.2002. uniti za Turbo Pascal
22.07.2002. Rad sa libpq
08.10.2002. Pascal WAV unit!!!
15.07.2004. C# Reference na projekte
20.07.2004. SAX API problem hitno
19.07.2004. SAX API problem
03.08.2004. Kompajliranje mplayera
Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Circular UNIT reference, problem

[es] :: Pascal / Delphi / Kylix :: Circular UNIT reference, problem

[ Pregleda: 4264 | Odgovora: 15 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

shaDy
Nikola J
-=BGD=-

Član broj: 1507
Poruke: 240
*.verat.net.

Sajt: www.CikloBerza.com


Profil

icon Circular UNIT reference, problem18.11.2004. u 23:22 - pre 185 meseci
POzdrav

Kao sto sam naslov kaze imam problem sa Circular Unit referencom...
evo o cemu se radi...

Imam 3 Klase: A, B, i C
Imam 2 Unita: Unit1 i Unit2

E sada,
Klasa A ima u sebi promenjivu koja je tipa Klase C.
Klasi B ima isto promenjivu tipa Klase C
Klasa C ima 2 promenjive Tipa klasa A i B

klase A i C su u Unit1 a B je u unit 2.

Problem je kako resiti problem Circular Unit referenca..
Ako ih stavim sve u jedan unit opet imam problem jer mi Forward Decleration klase tu nikako ne pomaze jer imam 3 ispovezivane klase...

Ima li neko neku ideju?

pozdrav svima


 
Odgovor na temu

bancika
Branislav Stojkovic

Član broj: 24844
Poruke: 631
*.vdial.verat.net.

Sajt: www.diy-fever.com


+1 Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 00:40 - pre 185 meseci
sama po sebi je struktura cirkularna, mislim da ne moze to tako da funkcionise. jel mora da bude tako komplikovano?? nigde ne mozes da definises pojam preko njega samog
Ride the rainbow, crack the sky

DIY gitare, pojacala i efekti www.diy-fever.com
 
Odgovor na temu

filjo

Član broj: 17551
Poruke: 136
*.co.yu.



+1 Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 03:51 - pre 185 meseci
Iz klase C izbaci sve promenjljive iz klasa A i B, i napravi C1 koja nasljedjuje C, a u njoj dodaj promenjljive iz klasa A,B tacno one koje si izbacio iz C.

 
Odgovor na temu

shaDy
Nikola J
-=BGD=-

Član broj: 1507
Poruke: 240
*.drenik.net.

Sajt: www.CikloBerza.com


Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 09:53 - pre 185 meseci
Da, tako bi trebalo da funkcionise, ali pod uslovom da opet nabacam sve u jedan UNIT...

hmmm ima li neka mogucnost da mi ostane sve to u 2 unita, posto ima dosta koda pa je preglednije i lakse za rad.

POzdrav
 
Odgovor na temu

Rapaic Rajko
Bgd

Član broj: 4105
Poruke: 785
217.119.242.*



+61 Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 10:38 - pre 185 meseci
'Ako ih stavim sve u jedan unit opet imam problem jer mi Forward Decleration klase tu nikako ne pomaze jer imam 3 ispovezivane klase...'

Forward declaration JOS KAKO pomaze; u jednom unit-u mozes da uradis sve.

Rajko

 
Odgovor na temu

shaDy
Nikola J
-=BGD=-

Član broj: 1507
Poruke: 240
*.drenik.net.

Sajt: www.CikloBerza.com


Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 10:47 - pre 185 meseci
evo u cemu je problem sa Forward decleration...

pisem na primer ovako:

Code:

type klasaC = class;  // Forward decl.

type klassaA = class
...
end;

// ovde bi trebalo da ide Forward Decl. klase B, ali to nije dozvoljeno...

Type KlasaC = class //klasa C
...
end;



Konkretno u mom primeru imam 2 threada. Thread1 i Thread 2
I imam jednu klasu.

Threadovi imaju u sebi promenjivu:
Owner : TKlasa;

a Klasa ima u sebi 2 promenjive:

Thread1 : TThread1;
Thread2 : TThread2;


 
Odgovor na temu

Milos D
Beograd

Član broj: 5621
Poruke: 280
*.ptt.yu.



+1 Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 11:26 - pre 185 meseci
Stavi forward declaration za SVE tri klase odmah na pocetak

type
klasaA = class;
klasaB = class;
klasaC = class;

pa tek onda nastavi sa punom deklaracijom
 
Odgovor na temu

shaDy
Nikola J
-=BGD=-

Član broj: 1507
Poruke: 240
*.drenik.net.

Sajt: www.CikloBerza.com


Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 11:31 - pre 185 meseci
Problem je u tome sto to ne moze tako..

Nego mora da se uradi

Forward...

pa neka klasssa

pa odma ispod klasa ciji je forward bio gore... Inace kompajler daje gresku..
 
Odgovor na temu

Rapaic Rajko
Bgd

Član broj: 4105
Poruke: 785
217.119.242.*



+61 Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 12:17 - pre 185 meseci
Uh, koji kompajler? U Delphi-ju moze glatko forward kako hoces...

Rajko
 
Odgovor na temu

shaDy
Nikola J
-=BGD=-

Član broj: 1507
Poruke: 240
*.drenik.net.

Sajt: www.CikloBerza.com


Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 16:11 - pre 185 meseci
Delphi 7

Prijavljuje sledecu gresku ukoliko ne postujem onaj redosled iz prosle poruke:

"Type ImeKlase is not yet defined."
 
Odgovor na temu

shaDy
Nikola J
-=BGD=-

Član broj: 1507
Poruke: 240
*.net
Via: [es] mailing liste

Sajt: www.CikloBerza.com


Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 19:47 - pre 185 meseci
Delphi 7...

Greska koju izbacuje je:

"Type KlasaA is not yet completely defined"

pozdrav
 
Odgovor na temu

Almedin

Član broj: 5895
Poruke: 385
*.as54.tz.bih.net.ba.



+22 Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 19:57 - pre 185 meseci
evo kako može (provjereno na d7):

unit Unit2;

interface

type
klasa1 = class;
klasa2 = class;
klasa3 = class;

klasa1 = class
Proba: integer;
p1: klasa2;
p2: klasa3;
end;

klasa2 = class
Proba: integer;
p1: klasa1;
p2: klasa3;
end;

klasa3 = class
Proba: integer;
p1: klasa1;
p2: klasa2;
end;
 
Odgovor na temu

filjo

Član broj: 17551
Poruke: 136
*.co.yu.



+1 Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 20:01 - pre 185 meseci
Daj definicije klasa u oba Unita pa ces sve srediti sa 1 postom.
 
Odgovor na temu

shaDy
Nikola J
-=BGD=-

Član broj: 1507
Poruke: 240
*.drenik.net.

Sajt: www.CikloBerza.com


Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 22:09 - pre 185 meseci
Kako mislis sve cu srediti sa jednim postom?



Sto se tice Forward declarationa.
U pravu ste, radi sve. Usled silnog sastavljanja klasa u jedan UNIT potkralo mi se jedno Type vise, pa je zbog toga izbacivo gressku...

pozdrav
 
Odgovor na temu

filjo

Član broj: 17551
Poruke: 136
*.co.yu.



+1 Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 22:36 - pre 185 meseci
Pa mislio sam tako, sto svi zelimo da ti pomognemo, a samo nagadjamo o strukturi tvojih klasa. Da si okacio kod, neko bi odmah ispravio greske. Eto samo toliko.

Pozdrav
 
Odgovor na temu

shaDy
Nikola J
-=BGD=-

Član broj: 1507
Poruke: 240
*.net
Via: [es] mailing liste

Sajt: www.CikloBerza.com


Profil

icon Re: Circular UNIT reference, problem19.11.2004. u 23:58 - pre 185 meseci
Ok. kapiram ;)

Hvala puno svima na pomoci.

Sto se tice forward declarationa, ja sam bio ubedjen da sam nedge procito da
mora biti ispostovan redosled o kome sam piso. Al eto ispostavilo se da sam
pogresno mislio a pored toga imo i gresku u kodu...
Jedino nemogu jos da razumem da ne postoji nacin da se ostave klase u
zasebnim unitima a da se nekako izbegne Circular reference...

Al dobro sta je tu je.. Stavio sam sve u jedan Unit, i sad radi...

pozdrav svima
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Circular UNIT reference, problem

[ Pregleda: 4264 | Odgovora: 15 ] > FB > Twit

Postavi temu Odgovori

Srodne teme
07.04.2002. GL problem
28.08.2002. uniti za Turbo Pascal
22.07.2002. Rad sa libpq
08.10.2002. Pascal WAV unit!!!
15.07.2004. C# Reference na projekte
20.07.2004. SAX API problem hitno
19.07.2004. SAX API problem
03.08.2004. Kompajliranje mplayera
Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.