Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Moderatore di Windows e software L'avatar di URANIO
    Registrato dal
    Dec 1999
    residenza
    Casalpusterlengo (LO)
    Messaggi
    1,290

    [VB.net]Passaggio Array

    Come faccio a passare un array da funzione?
    Mi spiego.
    Ho una funzione che deve restituire un array, ma non va.

    Per ora ho fatto una cosa del genere:
    Ho una classe con questa funzione
    codice:
    Private ArrHead() As String = {"ciccio", "caio", "sempronio"}
    
    ...vario codice...
    
    Public Function GetHead() As String()
        GetHead = ArrHead
    End Function
    E la richiamo da un'altra classe così:
    codice:
    With New nomedellaclasse
        ArrHead = .GetHead
    End With
    Il problemastà nella prima classe, mi da errore
    Impossibile trovare il metodo System.String[] locale.nomedellaclasse.GetHead()


    Suggerimenti?

  2. #2
    Utente di HTML.it L'avatar di Brainjar
    Registrato dal
    Nov 2004
    Messaggi
    1,162
    Su quale istruzione ti da errore ?
    Sei sicuro che è nella prima classe ?
    A me sembra incerto il codice che usi per ottenere l'array

    codice:
    With New nomedellaclasse
        ArrHead = .GetHead
    End With
    Come dichiari ArrHead, nella classe utilizzatrice ?

    Se provi così ti compila e ti esegue correttamente.

    codice:
            Dim p As New Prova()
            ' --------------------------------------------------------- 
            ' Così puoi dichiarare (e creare) l'array con le esatte
            ' dimensioni che ti occorrono senza doverle sapere a priori.
            ' Se cambia il numero di elementi nell'array della classe
            ' Prova, questo codice funzionerà sempre.
            ' --------------------------------------------------------- 
    	Dim a() As String = p.GetHead()
    
            ' Questa è solo per una prova .....
    	Microsoft.VisualBasic.MsgBox(a(1)) 
    
    
    	Public Class Prova
    		
    		Private ArrHead() As String = {"tizio", "caio", "sempronio"}
    
    		Public Function GetHead() As String()
        		GetHead = ArrHead
    		End Function
    
    	End Class
    Ciao,
    Brainjar.
    Ciao, Brainjar

  3. #3
    Moderatore di Windows e software L'avatar di URANIO
    Registrato dal
    Dec 1999
    residenza
    Casalpusterlengo (LO)
    Messaggi
    1,290
    [Funziona!]
    Probabilmente funzionava anche prima.
    Il problema era che la funzione copn l'array stava su una dll separata, che DISTRATTAMENTE non avevo ricompilato!
    me tapino§!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.