|
| sammenkædning af objekter Fra : Hans Hvelplund Odbor~ |
Dato : 09-12-00 20:36 |
|
jeg har fire arrays af fire klasser, og ønsker at sammenkæde sammenhængen
mellem de forskellige instanser, hvordan gør jeg det på den bedste måde?
eks:
jeg har flere instanser af klassen By og de ligger alle i et array.
By[]
Jeg har ligeledes flere instanser af klassen Vejspor som ligeledes ligger i
et array.
Jeg vil gerne at alle instanser af By ved hvilke veje der er til knyttet
dem, men gør jeg det bedst ved at at have et array af int som holder index i
Vejspor[] alleVeje
eller skal jeg er det bedre at have et array Vejspor mineVeje (som peger på
de objekter i alleVeje som er tilknyttet denne by)
Jeg formoder det sidste er det bedste, men jeg kan ikke helt gennemskue
hvordan det skal struktureres. Især fordi jeg på alle veje gerne vil have en
attribut af typen By, så jeg kan se hvor vejen ender.
Nu har jeg jo så det problem at jeg ikke kan lave instanser af by før jeg
kender alle veje og ikke lave veje før jeg kender alle byer - en slags hønen
og ægget problem (da jeg gerne vil lave disse ting i constructoren. men
måske kan det ikke lade sig gøre?)
| |
Christian Holm (10-12-2000)
| Kommentar Fra : Christian Holm |
Dato : 10-12-00 03:39 |
|
"Hans Hvelplund Odborg" <hhod00@control.auc.dk> wrote in message
news:NQvY5.6342$72.93178@twister.sunsite.auc.dk...
> Jeg vil gerne at alle instanser af By ved hvilke veje der er til knyttet
> dem, men gør jeg det bedst ved at at have et array af int som holder index
i
> Vejspor[] alleVeje
> eller skal jeg er det bedre at have et array Vejspor mineVeje (som peger
på
> de objekter i alleVeje som er tilknyttet denne by)
Når man modellerer TSP, shortest-path mm., hvor man bruger objekter som
dine, plejer man at gøre det på to måder.
Hvis ens veje er symmetriske, dvs. ikke ensrettede, har man et array med
alle byerne, samt et array af veje, der indeholder endepunkterne (byerne) og
evt. vejlængde eller lign. Sidstnævnte array indeholder blot referencer til
byerne på listen.
Hvis vejene ikke er symmetriske, plejer man at have en liste over alle
byerne, og til hver af disse byer er knyttet et antal veje, hvor der i
vej-objektet er angivet en destinationsby.
Håber det giver mening, ellers må du spørge igen.
Christian
| |
Hans Hvelplund Odbor~ (10-12-2000)
| Kommentar Fra : Hans Hvelplund Odbor~ |
Dato : 10-12-00 12:47 |
|
jojo jeg er skam helt med (tror jeg nok),
men mit spørgsmål var mere ala
skal jeg instantiere byerne først og så når instantiere jeg instantiere
vejene, så lade dem gå ind og fortælle deres endepunkter(byer) at de hører
sammen ?
eller kan jeg gøre det smartere?
"Christian Holm" <christian@neholm.dk> wrote in message
news:90uqcl$o0v$1@news.inet.tele.dk...
> "Hans Hvelplund Odborg" <hhod00@control.auc.dk> wrote in message
> news:NQvY5.6342$72.93178@twister.sunsite.auc.dk...
> > Jeg vil gerne at alle instanser af By ved hvilke veje der er til knyttet
> > dem, men gør jeg det bedst ved at at have et array af int som holder
index
> i
> > Vejspor[] alleVeje
> > eller skal jeg er det bedre at have et array Vejspor mineVeje (som peger
> på
> > de objekter i alleVeje som er tilknyttet denne by)
>
> Når man modellerer TSP, shortest-path mm., hvor man bruger objekter som
> dine, plejer man at gøre det på to måder.
> Hvis ens veje er symmetriske, dvs. ikke ensrettede, har man et array med
> alle byerne, samt et array af veje, der indeholder endepunkterne (byerne)
og
> evt. vejlængde eller lign. Sidstnævnte array indeholder blot referencer
til
> byerne på listen.
> Hvis vejene ikke er symmetriske, plejer man at have en liste over alle
> byerne, og til hver af disse byer er knyttet et antal veje, hvor der i
> vej-objektet er angivet en destinationsby.
>
> Håber det giver mening, ellers må du spørge igen.
>
> Christian
>
| |
Christian Holm (10-12-2000)
| Kommentar Fra : Christian Holm |
Dato : 10-12-00 13:28 |
|
"Hans Hvelplund Odborg" <hhod00@control.auc.dk> wrote in message
news:L2KY5.7244$72.98938@twister.sunsite.auc.dk...
> skal jeg instantiere byerne først og så når instantiere jeg instantiere
> vejene, så lade dem gå ind og fortælle deres endepunkter(byer) at de hører
> sammen ?
> eller kan jeg gøre det smartere?
Det afhænger lidt af hvordan dine data ligger, men ellers tror jeg den
eneste måde at gøre det på, er at instantiere 'løbende', dvs. som du læser
dine data. Hvis du selv kan bestemme data, vil det nok være smartest at
anvende din fremgangsmåde.
Christian
| |
Hans Hvelplund Odbor~ (10-12-2000)
| Kommentar Fra : Hans Hvelplund Odbor~ |
Dato : 10-12-00 14:40 |
|
> Det afhænger lidt af hvordan dine data ligger, men ellers tror jeg den
> eneste måde at gøre det på, er at instantiere 'løbende', dvs. som du læser
> dine data. Hvis du selv kan bestemme data, vil det nok være smartest at
> anvende din fremgangsmåde.
jeg læser dem fra en fil(er det løbende, eller bestemt?):
[By1]<By2>
[By2]<By1,By3,By4>
[By3]<By2,By4>
[By4]<By2,By3>
hvor [] er en given by, <> er dens naboer
| |
|
|