Golang map as function parameter

package main

import (
    "fmt"
)

func modifyMap(m map[string]int) {
    m["one"] = 1
    m["two"] = 2
}

func main() {
    myMap := make(map[string]int)
    myMap["zero"] = 0

    fmt.Println("Before modification:", myMap)

    modifyMap(myMap)

    fmt.Println("After modification:", myMap)
}

Explanation of each step:

  1. Import the necessary packages (fmt in this case) to use their functionalities.

  2. Define a function modifyMap that takes a map m as a parameter. Inside this function:

  3. Add key-value pairs to the map m: "one" with a value of 1 and "two" with a value of 2.

  4. Define the main function where the program execution begins:

  5. Create a map myMap using make, initially setting a key "zero" with a value of 0.

  6. Print the contents of myMap before modification using fmt.Println.

  7. Call the modifyMap function, passing the myMap as an argument. This will modify the contents of myMap within the function.

  8. Print the contents of myMap after modification using fmt.Println. This demonstrates that changes made to the map inside the modifyMap function reflect in the original myMap as well.