Hej NG
I forbindelse med oprettelse og anvendelse af klasser, er jeg flere gange
løbet i nogle underlige problemer, som jeg håber at kunne få et svar på.
Jeg har flere gange været i en situation hvor jeg har haft brug for at
anvende en klasse som igen anvender andre klasser.
F.eks:
Jeg har oprettet en klasse der repræsenterer en ordre (f.eks cOrder).
Denne ordre består igen af en samling af andre klasser som repræsenterer
ordrelinjer (f.eks. cOrderLine).
Hvis jeg implementerer cOrder i filen cOrder.asp, og klassen cOrderLine i
filen cOrderLine.asp, skal disse jo includes det sted hvor jeg gerne vil
bruge et objekt af typen cOrder... so far so good.
Men så er det at problemerne opstår.
Hvis jeg i filen ViewOrders.asp, opretter to includes (en til hver klasse)
f.eks.:
<!-- #include file="cOrder.asp" -->
<!-- #include file="cOrderLine.asp" -->
så kan jeg i klassen cOrder ikke oprette objekter af typen cOrderLine... Jeg
får en fejl der siger at typen ikke er oprettet. Tager jeg nu
klassedeklerationen for cOrderLine og kopierer den over i f.eks
ViewOrder.asp eller cOrder.asp, får jeg endnu en gang en fejl... denne gang
en fejl der siger at klassen cOrderLine er oprettet to gange?!
Fjerner jeg min include af cOrderLine fra ViewOrders.asp, og sætter den ind
i cOrder.asp, får jeg endnu en gang en fejl om at klassen ikke er
defineret...
Hvilke retningslinjer er der (om nogen) for hvordan man skal include klasser
man selv skriver, som indbyrdes refererer til hinanden?
/Carsten Suurland
|