Go Built-In Function new: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
No edit summary
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
=Internal=
* [[Go_Functions#new|Go Functions]]
=Overview=
=Overview=
<code>new()</code> can be used to create new slice, map and struct instances.
<code>new()</code> can be used to create [[Go_Structs#new|new struct instances]].
 
=TO DEPLETE=
=TO DEPLETE=
<font color=darkkhaki>
<font color=darkkhaki>
Line 22: Line 26:
==<tt>new()</tt> and <tt>New()</tt>==
==<tt>new()</tt> and <tt>New()</tt>==


The "[[Go_Concepts_-_Error_Handling#The_.22errors.22_Package|errors]]" package exposes a <tt>New()</tt> function. Do not mistake it for <tt>new()</tt>.
The "[[Go Language Error Handling#The_.22errors.22_Package|errors]]" package exposes a <tt>New()</tt> function. Do not mistake it for <tt>new()</tt>.

Latest revision as of 22:34, 30 August 2023

Internal

Overview

new() can be used to create new struct instances.

TO DEPLETE

Internal

Overview

The new() built-in function takes a type as argument, allocates memory of the given type and returns a pointer to it.

var ptr *some_type
ptr = new(some_type)

We don't have to worry about de-allocating memory allocated with new(). It is automatically garbage collected.

new() and New()

The "errors" package exposes a New() function. Do not mistake it for new().