Zero-initialization

Zero-initialization is a source of confusion sometimes. They are default values for many types that are assigned even if you don't provide a value for the definition. Following are the zero-initialization for various types:

  • The false initialization for bool type.
  • Using 0 values for int type.
  • Using 0.0 for float type.
  • Using "" (empty strings) for string type.
  • Using nil keyword for pointers, functions, interfaces, slices, channels and maps.
  • Empty struct for structures without fields.
  • Zero-initialized struct for structures with fields. The zero value of a structure is defined as the structure that has its fields initialized as zero value too.

Zero-initialization is important when programming in Go because you won't be able to return a ...

Get Go: Design Patterns for Real-World Projects now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.