The zero value of a struct value is not nil
Each element of such a variable or value is set to the zero value for its type: false
for booleans, 0
for integers, 0.0
for floats, ""
for strings, and nil
for pointers, functions, interfaces, slices, channels, and maps.
In your case, this variable declaration var NewVar Ptr
creates the variable, binds corresponding identifier Ptr
to it, and gives it a type and an initial value.