Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- var a = 1
- var b = 1
- var c = 1 // never modified
- var d = []int{1, 2}
- var e = []int{1, 2}
- var f = []int{1, 2} // never modified
- var g = map[string]int{"a": 1}
- var h = map[string]int{"a": 1}
- var i = map[string]int{"a": 1} // never modified
- var j = T{a: 1}
- var k = T{a: 1}
- var l = T{a: 1} // never modified
- func main() {
- a = 2 // modifies a
- modInt(&b) // modifies b
- useInt(c) // uses c but doesn't modify
- d[0] = 2 // modifies d
- modSlice(e) // modifies e
- useInt(f[0]) // uses f but doesn't modify
- g["a"] = 2 // modifies g
- modMap(h) // modifies h
- useInt(i["a"]) // uses i but doesn't modify
- j.a = 2 // modifies j
- modT(&k) // modifies k
- useInt(l.a) // uses i but doesn't modify
- }
- func modInt(in *int) {
- *in = 2
- }
- func modSlice(in []int) {
- in[0] = 2
- }
- func modMap(in map[string]int) {
- in["a"] = 2
- }
- func modT(in *T) {
- in.a = 2
- }
- func useInt(i int) {
- println(i)
- }
- type T struct {
- a int
- }
Add Comment
Please, Sign In to add comment