Avatar billede cort Nybegynder
24. april 2001 - 16:01 Der er 9 kommentarer og
1 løsning

hvad gør ByRef og ByVal?

hvad gør ByRef og ByVal?
Avatar billede nute Nybegynder
24. april 2001 - 16:04 #1
de indikerer at et argument overføres henholdvis via referanse eller verdi

/nue
Avatar billede cort Nybegynder
24. april 2001 - 16:06 #2
kan du give et hurtigt eks?
Avatar billede ricki Nybegynder
24. april 2001 - 16:06 #3
ja præcis... det er et spørgsmål om den skal lave en kopi af variablen i rammen eller den bare skal henvise til samme værdi.
Hvis du bruger en reference og du ændre på værdien vil værdien også blive ændret på den variabel du gav med i funktionskaldet.
Avatar billede nute Nybegynder
24. april 2001 - 16:10 #4
function test( ByRef arg )
  // hvis du gjør:
  arg = \"test\"
  // her inne, så forandrer du verdien til den variabelen som blir passert som parameter
end function

men....

function test( ByVal arg )
  // hvis du gjør:
  arg = \"test\"
  // her inne, så forandrer du kun verdien til den variabelen du sender med til funksjonen
end function

/nute
Avatar billede cort Nybegynder
24. april 2001 - 16:13 #5
det vil sige at hvis jeg tildeler min funtions parameter arg værdien 2, kan funktionen huske værdien 2 plus en evt ny værdi.

eks:

kald af function:  <% test(2) %>
Avatar billede cort Nybegynder
24. april 2001 - 16:14 #6
er det rigtigt ellers fatter jeg bare ikke en meter af det
Avatar billede nute Nybegynder
24. april 2001 - 16:18 #7
eeehhhh....nei....

<%
orgArg = \"test nummer en\"
Call test( orgArg ) \' her kaller du funksjonen
%>

hvis din funksjon tar argumenter ByRef, så forandrer du verdien til \'orgArg\', mens hvis din funksjon tar argumenter ByVal, så forandrer den kun verdien til parameteret du sender inn...

/nute
Avatar billede cort Nybegynder
24. april 2001 - 16:20 #8
det er sgu da lige som en normal funktion hvor man bare ikke skriver ByRef eller??????????
Avatar billede nute Nybegynder
24. april 2001 - 16:21 #9
helt det samme....men ved å skrive ByRef/ByVal, så kontrollerer du ressursene istedenfor at systemet gjør det for deg :)
Avatar billede ricki Nybegynder
24. april 2001 - 16:52 #10
det kan i nogle tilfælde også være smart at bruge ByVal, fx i forbindelse med rekution (-en funktion der kalder sig selv).
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
Kurser inden for grundlæggende programmering

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