is golang pass by value?
Strictly speaking, there is only one way to pass parameters in Go - by value. Every time a variable is passed as parameter, a new copy of the variable is created and passed to called function or method. ... In case a variable is passed by pointer, a new copy of pointer to the same memory address is created.