allomov
6/5/2015 - 11:42 AM

gcc-go-closures-return.go

package main

import "fmt"

func testFunction() (value int, err error) {
    value = 1
    fmt.Println("In the beginning value is : ", value)
    closure := func() (error) {
        value = 2
        fmt.Println("value is changed in closure : ", value)
        return nil
    }
    return value, closure()
}

func main() {
    result, err := testFunction()
    fmt.Println("final result is : ", result)
    fmt.Println("err is : ", err)
}