ryan79
22-10-2012, 15:42
Ciao a tutti!
Come si dichiara una funzione che riceve un parametro che può essere sia un double sia una matrice double(,) ? Mi spiego meglio. Ho creato una funzione con vb.net (2012 express) che servirebbe per moltiplicare 2 matrici. Fin qui tutto bene. Funziona. Adesso, però, vorrei utilizzare la stessa funzione per moltiplicare uno scalare per una matrice. Ovviamente, se passo alla funzione che ho creato lo scalare, mi da errore perchè non è una matrice. Da qui la domanda se esiste una sorta di metodo per dare a una funzione più prototipi (si dice così?). Un po' come la funzione di vb.net strings.mid(). Appena si digita compare il suggerimento che indica due modi per passare le variabili alla funzione. Al momento la funzione la dichiaro in questo modo:
Function MatMult(ByVal PrimaMatrice As Double(,), ByVal SecondaMatrice As Double(,)) As Double(,)
Come si dichiara una funzione che riceve un parametro che può essere sia un double sia una matrice double(,) ? Mi spiego meglio. Ho creato una funzione con vb.net (2012 express) che servirebbe per moltiplicare 2 matrici. Fin qui tutto bene. Funziona. Adesso, però, vorrei utilizzare la stessa funzione per moltiplicare uno scalare per una matrice. Ovviamente, se passo alla funzione che ho creato lo scalare, mi da errore perchè non è una matrice. Da qui la domanda se esiste una sorta di metodo per dare a una funzione più prototipi (si dice così?). Un po' come la funzione di vb.net strings.mid(). Appena si digita compare il suggerimento che indica due modi per passare le variabili alla funzione. Al momento la funzione la dichiaro in questo modo:
Function MatMult(ByVal PrimaMatrice As Double(,), ByVal SecondaMatrice As Double(,)) As Double(,)