Menu

Go... interface!
📰

Go... interface!

DEV Community: go·Baltasar García Perez-Schofield·2 days ago
#ODowm9JB
#devtogo#devto#dev#include#define
Reading 0:00
15s threshold

Nos quedamos en la última entrega con una estructura que Animal hacía de tipo "base" del tipo Cat . El problema venía cuando queríamos crear un patrón factory method , ya que no podemos apuntar con un puntero a Animal a una estructura Cat .

func New () * Animal { return & Cat {} // Error! }

Enter fullscreen mode

Exit fullscreen mode

Lo cierto es que estamos acostumbrados a C++, de manera que una clase derivada no es más que los atributos de la clase base, y, a continuación, los atributos de la clase derivada. Incluso Glib, pese a utilizar C y no C++, utiliza este "truco" en el que la clase base está primero en la memoria con la clase derivada.…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.