17. oktober 2001 - 14:47Der er
33 kommentarer og 1 løsning
Underlig håndtering af en property
Er der et klogt hovede der kan svare mig på, hvorfor compileren brokker sig over følgende stykke kode. For at reproducere: 1) Nyt program. 2) Overskriv hele Unit1 med dette. 3) placer en button på formen. Prøv det lige af inden du skyder af fra hoften og rammer forkert :)
Brug af AI afslører de svagheder, virksomheder allerede har opbygget gennem års cloud-transformation, nye SaaS-løsninger og fragmenterede sikkerhedssystemer.
Det var jeg godt selv klar over lige efter jeg havde postet, men hvis du prøver programmet som jeg skrev :) ville du se, at compileren ikke kommer længere end til DoSomething(Gonyf.Test), hvor den skriver :\"Constant object cannot be passed as var parameter\"
Kan du svare på problemet eller ej? Du spilder MIN tid med overflødige kommentarer der jo ikke afspejler din formentlig fine forståelse af min uddybning af spørgsmålet.
Godt bud, men problemet er, at jeg i det \"rigtige program\" hvor jeg benytter det har 3 parametre som input med værdier, der modificeres og ryger den anden vej igen. Så spørgsmålet er, hvorfor Delphi opfatter en, efter min mening, variabel som en konstant og hvordan man løser problemet. en løsning er selvfølgelig:
procedure TForm1.Button1Click(Sender: TObject); var Temp:Double; begin Temp:=Gonyf.Test; DoSomething(Temp); Gonyf.Test:=Temp; end;
En property på et obj. \"virker som en Variable men er jo faktisk en get og set func. så der for SKAL du via en var, hvis parameteren skal være en VAR, men du kunne jo overveje at sende dit OBJ ned i stedte for en property på obj. så kan dosomething rette directe på obj. property\'s, og du kan undvære din VAR overførsel
franzthomsen >> Helt ærlig. Det der kan du sku ikke tillade dig. Jeg fandt begge dine fejl. Gav dig en mulig løsning. Nu giver du så alle point til martinlind.
Du er er dum skid, som ikke skal forvente hjælp fra mig igen :o(
med en lokal variabel. Det er godt nok en amatøragtig måde, specielt set i lyset af, at der i mine øjne ikke skulle være noget til hinder for at det virkede i starten af. Men sådan er det jo nok bare skruet sammen i D :/
microtec >> du fandt ingen fejl jeg ikke allerede var klar over og gav ingen muligheder jeg ikke allerede var klar over. martinlind gav en forklaring jeg ikke var klar over og en mulighed jeg selv havde prøvet. Derfor
Et HELT obj er jo \"bare en Pointer\" så JA det ville jeg overveje kraftig, det er sikker det nemeste og hurtigste, du behøver ikke allokere en lokal var på stacken og opnår det du vil.
Ja, men hvis TGonyf er en property i en overklasse, som igen indgår i en hovedklasse, så er det i virkeligheden hele min datastruktur i programmet der skal overføres :)
Problemet jeg bad om svar til var, hvorfor min compiler skrev \"Constant object cannot be passed as var parameter\", hvilket også ville fremgå, hvis programmet blev kørt. Svaret på det var at en property ikke er en variabel.
martinlind >> Ja det gør vi da. \"Ulveflokken\" kommer nok efter mig nu.
Som sagt, er jeg dødhammerende træt at den måde dette forum har udviklet sig på. Folk lukker ikke sine spørgsmål, vender ikke tilbage, afviser rigtige svar. Sproget er efterhånden et kapitel for sig selv. Bliver man kun kaldt spasser, skal det opfattes som en kærlighedserklæring.
Sidst jeg oprettede et spørgmål med alle min point for at gøre opmærksom på problemet, førte admin dem blot tilbage uden så meget som EN kommentar.
Synes godt om
Ny brugerNybegynder
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.