Why I prefer explicit pointers

In most languages where pointers either aren't possible at all or hidden (C#) you have this weird setup where some types are passed by ref and some by value.

But in languages like Golang or C/C++ you have to do this explicit.

When you understand how this works I prefer the latter once I understand it, because it is much easier to control if something should be the same or a copy of it