Avatar billede Droa Seniormester
29. september 2009 - 17:31 Der er 11 kommentarer og
2 løsninger

Få navn på objektet der kalder et objekt?

vis jeg laver en instance af CardDeck, der hedder "StandartCardDeck", og igennem StandarCardDeck, kalder en instance af Card, der hedder "HeartofAce", kan "HeartofAce", så ikke igennem dens constructor, finde ud af hvad objekt den høre inden under? (altså "StandartCardDeck").

på forhånd tak :)
Avatar billede arne_v Ekspert
29. september 2009 - 17:39 #1
Du kan godt faa fat en ref til objektet hvor kaldet sker via lidt snagen i stack trace.

Men du kan ikke noedvendigvis finde navnet. Fordi navnene paa lokale variable forsvinder ved compilering.
Avatar billede Droa Seniormester
29. september 2009 - 17:42 #2
det er mest bare for at få samlet alle kort i et Deck, så man kunne blande kortene, uden de ryger over i et andet deck :)

men kigger lige på ref, er meget ny i C#, men prøver lige og se om jeg kan, tak for hjælpen.. ligger du er svar? :)
Avatar billede kza Nybegynder
29. september 2009 - 17:56 #3
Hvis jeg har forstået dig ret, har du brug for noget a la:

public class Card
{
    private CardDeck deck;

    public Card(CardDeck deck, <andre parametre>)
    {
        this.deck = deck;
        ...
    }
    ...
}

Dit Card vil nu altid have fat i (have en refence til) det CardDesc, det tilhører.

/Klaus
Avatar billede Droa Seniormester
29. september 2009 - 18:09 #4
Mange tak for den idé, det var faktisk meget praktisk, i min situation :)
Avatar billede arne_v Ekspert
29. september 2009 - 18:40 #5
Hvis dit CardDeck indeholder en List<Card>, saa kan du fint blande dem i CardDeck uden at Card har nogen anelse om hvor de hoerer hjemme.
Avatar billede bitmatic Nybegynder
29. september 2009 - 19:19 #6
Jeg holder lidt med arne_v her. Lad et CardDeck indeholde en liste med Cards.

Hvis jeg skal være rigtig puristisk, synes jeg det er konceptuelt forkert hvis et kort skal have kendskab til hvilket deck det tilhører. Et deck er ikke en egenskab på et kort.
Avatar billede Droa Seniormester
29. september 2009 - 20:54 #7
yeah.. jeg glemte lidt og tænke da jeg oprettede spørgsmålet... selvfølgelig kan kortenen ikke blandes med et andet deck, når man opretter et deck for hver kortsæt.. så det er jo ligemeget.. men du skal ikke snydes for point
Avatar billede kza Nybegynder
30. september 2009 - 10:11 #8
Hvem skal ikke snydes for point?

De andre har i øvrigt ret. Du skal lade CardDeck indeholde en liste af Cards, mens at reference fra Card tilbage til CardDeck ikke er helt 'naturlig'. Du skal kun medtage den, hvis du virkelig har brug for den, men det kommer an på, hvordan du har designet dit system.
Avatar billede arne_v Ekspert
22. oktober 2009 - 22:37 #9
Tid at få afsluttet her ?
Avatar billede Droa Seniormester
07. august 2010 - 01:27 #10
kan nogen ikke svare hurtigt? fordi jeg prøver og få lukket alle de gamle åbne tråde
Avatar billede arne_v Ekspert
07. august 2010 - 01:39 #11
Vi kan vel dele !?

Her er et svar fra mig.
Avatar billede arne_v Ekspert
07. august 2010 - 01:40 #12
og så skal man lige ramme den lille cirkel

:-)
Avatar billede bitmatic Nybegynder
08. august 2010 - 15:13 #13
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB

Udviklings- og Forenklingsstyrelsen

Systemejer/Application Manager til SAP-installationer

De Nationale Geologiske Undersøgelser for Danmark og Grønland (GEUS)

IT-systemadministrator søges til GEUS

Udviklings- og Forenklingsstyrelsen

Erfaren udvikler/DevOps til Integrationsplatforme

Dansk Sygeplejeråd

IT-teknisk medarbejder