Passaggio dei Dati alle Funzioni
Le funzioni non sono molto utili se non possiamo accedere ai dati dall'esterno a causa delle differenze di ambito. Tuttavia, è possibile passare dati alle funzioni utilizzando i 'parametri'.
I parametri definiscono un formato per i dati che una funzione si aspetta di ricevere quando viene chiamata o eseguita.
Nei capitoli precedenti, abbiamo esaminato funzioni semplici senza parametri. Tuttavia, è possibile dichiarare una funzione con parametri utilizzando la seguente sintassi:
index.go
123func myFunc(param1 datatype, param2 datatype, ...) { // Code }
Ogni parametro può avere un nome distinto seguito dal suo tipo di dato. I parametri sono separati da virgole. I parametri seguono le stesse convenzioni di denominazione delle variabili.
Ecco un esempio che illustra l'utilizzo delle funzioni con parametri:
index.go
12345678910111213141516171819202122package main import "fmt" func outThreeTimes(message string) { fmt.Println(message) fmt.Println(message) fmt.Println(message) } func sum(value1 int, value2 int) { fmt.Println("Sum:", value1 + value2) } func product(val1 int, val2 int, val3 int) { fmt.Println("Product:", val1 * val2 * val3) } func main() { outThreeTimes("Hello World") sum(17, 25) product(4, 7, 9) }
Nel programma sopra, si notano funzioni con uno, due e tre parametri. È perfettamente possibile creare funzioni con il numero di parametri necessario.
I valori possono essere forniti a queste funzioni sia direttamente sia tramite variabili. Ad esempio, nella seguente istruzione, forniamo direttamente il valore della stringa dove è previsto un parametro:
index.go
1outThreeTimes("Hello World")
In alternativa, è possibile memorizzarlo all'interno di una variabile di tipo stringa e poi passare tale variabile alla funzione:
index.go
12var msg string = "Hello World" outThreeTimes(msg)
Nella dichiarazione seguente, si osserva una combinazione di entrambi gli approcci:
index.go
123var a int = 4 var b int = 7 product(a, b, 9)
Puoi scegliere il metodo che meglio si adatta alle tue esigenze.
Nota
Quando si passano variabili o valori di dati a una funzione, questi sono chiamati argomenti. Nel caso di
product(a, b, 9), i terminia,be9sono argomenti. Al contrario, nella dichiarazione della funzione,val1 int,val2 inteval3 intsono noti come parametri.
È importante passare i dati alle funzioni nell'ordine definito dai parametri. Ad esempio, in una funzione func myFunc(an int, b string), il primo argomento deve essere un intero e il secondo deve essere una stringa; qualsiasi altro ordine comporterà errori.
All'interno della funzione, i parametri agiscono effettivamente come variabili che assumono i valori degli argomenti passati. Pertanto, dichiarare variabili con lo stesso nome di un parametro della funzione all'interno del corpo della funzione genererà errori.
index.go
123func myFunc(param int) { var param int = 1 // Error Here }
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Can you explain the difference between parameters and arguments again?
Why does the order of arguments matter when calling a function?
What happens if I use the same name for a parameter and a variable inside the function?
Fantastico!
Completion tasso migliorato a 1.96
Passaggio dei Dati alle Funzioni
Scorri per mostrare il menu
Le funzioni non sono molto utili se non possiamo accedere ai dati dall'esterno a causa delle differenze di ambito. Tuttavia, è possibile passare dati alle funzioni utilizzando i 'parametri'.
I parametri definiscono un formato per i dati che una funzione si aspetta di ricevere quando viene chiamata o eseguita.
Nei capitoli precedenti, abbiamo esaminato funzioni semplici senza parametri. Tuttavia, è possibile dichiarare una funzione con parametri utilizzando la seguente sintassi:
index.go
123func myFunc(param1 datatype, param2 datatype, ...) { // Code }
Ogni parametro può avere un nome distinto seguito dal suo tipo di dato. I parametri sono separati da virgole. I parametri seguono le stesse convenzioni di denominazione delle variabili.
Ecco un esempio che illustra l'utilizzo delle funzioni con parametri:
index.go
12345678910111213141516171819202122package main import "fmt" func outThreeTimes(message string) { fmt.Println(message) fmt.Println(message) fmt.Println(message) } func sum(value1 int, value2 int) { fmt.Println("Sum:", value1 + value2) } func product(val1 int, val2 int, val3 int) { fmt.Println("Product:", val1 * val2 * val3) } func main() { outThreeTimes("Hello World") sum(17, 25) product(4, 7, 9) }
Nel programma sopra, si notano funzioni con uno, due e tre parametri. È perfettamente possibile creare funzioni con il numero di parametri necessario.
I valori possono essere forniti a queste funzioni sia direttamente sia tramite variabili. Ad esempio, nella seguente istruzione, forniamo direttamente il valore della stringa dove è previsto un parametro:
index.go
1outThreeTimes("Hello World")
In alternativa, è possibile memorizzarlo all'interno di una variabile di tipo stringa e poi passare tale variabile alla funzione:
index.go
12var msg string = "Hello World" outThreeTimes(msg)
Nella dichiarazione seguente, si osserva una combinazione di entrambi gli approcci:
index.go
123var a int = 4 var b int = 7 product(a, b, 9)
Puoi scegliere il metodo che meglio si adatta alle tue esigenze.
Nota
Quando si passano variabili o valori di dati a una funzione, questi sono chiamati argomenti. Nel caso di
product(a, b, 9), i terminia,be9sono argomenti. Al contrario, nella dichiarazione della funzione,val1 int,val2 inteval3 intsono noti come parametri.
È importante passare i dati alle funzioni nell'ordine definito dai parametri. Ad esempio, in una funzione func myFunc(an int, b string), il primo argomento deve essere un intero e il secondo deve essere una stringa; qualsiasi altro ordine comporterà errori.
All'interno della funzione, i parametri agiscono effettivamente come variabili che assumono i valori degli argomenti passati. Pertanto, dichiarare variabili con lo stesso nome di un parametro della funzione all'interno del corpo della funzione genererà errori.
index.go
123func myFunc(param int) { var param int = 1 // Error Here }
Grazie per i tuoi commenti!