You are here |
rselbach.com | ||
| | | |
www.integralist.co.uk
|
|
| | | | The following code doesn't do what you might expect: package main import "fmt" func main() { var i *impl fmt.Println("i == nil:", i == nil) what(i) } type impl struct{} func (i *impl) do() {} func what(i interface{ do() }) { fmt.Println("i == nil:", i == nil) } If you expected the what function to print i == nil: true, then keep reading... Typed Nils The behavior observed is due to the way interfaces and nil values interact in Go. | |
| | | |
quii.dev
|
|
| | | | Chris James, London - Software Engineer | |
| | | |
www.cppstories.com
|
|
| | | | From dynamic container operations to compile-time constants, C++ offers a variety of techniques (as in this famous Meme :)). In this article, we'll delve into advanced initialization methods likereserve() and emplace_backfor containers to tuples with piecewise_construct and forward_as_tuple. Thanks to those techniques, we can reduce the number of temporary objects and create variables more efficiently. | |
| | | |
www.poberezkin.com
|
|
| | Evgeny Poberezkin's blog |