Golang Essentials for C & C++ Developers: Part II

Function with return value name

func f() (r int) {
   r = 1
   return
}

Return Multiple Values

func f() (int, string) {
    return 10, "ten"
}

Variadic Functions

package main

import "fmt"

func varFunc(a int, b ...string) (int) {
        for v:= 0; v <= 3; v++ {
        fmt.Println(b[v])
    }
    return a
}

func main() {
        strs := []string {"abc", "def", "ghi", "jkl"}
        a := varFunc(10, strs...)
        fmt.Println(a)
}

Closure

  • Function defined inside a function

defer statement

 func main() {
        defer func(a string) {
                fmt.Println(a)
        } ("bye bye")
}

Written with StackEdit.

Advertisements

Published by

Vishal

A voyager on the journey to technology and art of software development. Pursuing arts, music, photography, and ways to live life on the edge

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.