• User Newbie

    [ASP] passare vettore a funzione

    Ciao ragazzi,

    desidererei sapere come sarebbe possibile passare un vettore o matrice ad un funzione affinchè lo elabori e ne aggiorni il valori.

    es:

    <%
    function init(vett)

    for i=1 to ubound(vett)
    vett(i) = "numero" & i
    next
    init = vett
    end function

    dim vettore()
    vettore() = init(vettore) %>

    so che il codice sarà sbagliato in vari punti,
    mi sapreste indicare voi del codice valido e funzionante in ASP ??

    Thanks!


  • Moderatore

    Ciao,
    vettori e matrici si passano alle function e/o sub per riferimento (ByRef) e non per valore (ByVal).
    In Vb.script, di default, il passaggio dei parametri alle funzioni avviene per riferimento (senza specificare ByRef/Byval).
    Alla funzione, cioè, si passa un riferimeto/puntatore all'oggetto in questione e non il suo valore (o insiemi di valori), al contrario in vb.net il passaggio di default è per valore (si passa una copia dell'oggetto). Se in vb.net si vuole passare un parametro per riferimento, in quanto si desidera che i valori modificati sdalla function siano disponibili ed aggiornati dopo l'esecuzione della stessa, allora di deve usare la parola riservata ByRef prima del nome del parametro.

    Pertanto nel tuo caso (vb.script) dovrebbe essere semplicemente:

    
    <%
    function init(vett)
     for i=1 to ubound(vett)
     vett(i) = "numero: " & i
     next
    end function
     
    dim vettore
    vettore = init(vettore) %>
     
    
    

    Maggiori info >>
    :ciauz: