Go Functions: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 14: Line 14:


<syntaxhighlight lang='go'>
<syntaxhighlight lang='go'>
func <function_name>([parameters]) [(return_values)] {
func <function_name>([parameters]) [(return_declaration)] {
   // body
   // body
   [return [return_values]]
   [return [return_values]]
Line 21: Line 21:


==Parameters==
==Parameters==
==Return Values==
==Return Declaration==


=<tt>main()</tt>=
=<tt>main()</tt>=

Revision as of 03:50, 26 August 2023

External

Internal

Overview

A function is a block of instructions, grouped together, and that optimally have a name.

Go functions allow variables to be declared, inside the function, with the short variable declaration.

Function Syntax

The function declaration starts with the func keyword.

func <function_name>([parameters]) [(return_declaration)] {
  // body
  [return [return_values]]
}

Parameters

Return Declaration

main()

All programs in Go must have a main() function, where the program execution starts. The main() function must be declared in the main package.

Pass by Value vs. Pass by Reference vs. Pass by Pointer

Arrays are passed by value.

Built-in Functions

Built-in functions are available by default, without importing any package. Their names are predeclared function identifiers. They give access to Go's internal data structures. Their semantics depends on the arguments.

append() cap() close() complex() copy()
delete() imag() len() make() new()
panic() print() println() real() recover()

Length and Capacity

https://golang.org/ref/spec#Length_and_capacity

len()

len() returns string length, array length, slice length and map size.

cap()

cap() returns slice capacity.

Complex Number Manipulation

complex() real() imag()

TO DO: Continue to Distribute These Built-in Functions

close()

Allocation: new()

Making slices, maps and channels: make()

Appending to and copying slices: append(), copy()

Deletion of map elements delete()

Handling panics panic(), recover()

DEPLETE THIS


Built-in functions for type conversions.

deplete this Go Concepts - Functions