I'm still sort of wrapping my head around the finer details of interfaces and pointers in Go. I've run into an issue with a simple type containing a pointer to net.Conn. When I attempt to call a method (Close) on the pointer, I'm receiving type *net.Conn has no field or method Close
Here's a trivial example highlighting the issue: http://play.golang.org/p/Q4LB0wi6Tk
What's the proper way to call Close()
here?
Short answer is "Don't use pointers to interfaces". There's rarely any need for them, and you end up with confusing errors like you see.
You would also never use new()
to create a pointer to an empty interface. Interfaces are satisfied implicitly by a concrete type.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With