He estado jugando con Go un poco haciendo algunas bibliotecas de estructura de datos y tengo un gran problema. Quiero que la estructura de datos pueda contener cualquier tipo, pero no veo ninguna forma de hacerlo en Go porque no puedes declarar punteros vacíos y no tienen una clase como NSObject de la que todo hereda. ¿Cómo conseguiría esta misma funcionalidad en Go?Ir equivalente a un puntero de vacío en C
18
A
Respuesta
26
Según the Go Programming Language Specification:
Un tipo implementa cualquier interfaz que comprende cualquier subconjunto de sus métodos y por lo tanto puede implementar varias interfaces distintas. Por ejemplo, todos los tipos implementan la interfaz de vacío :
interface{}
Si usted busca dentro de ese documento para interface{}
, verá un buen número de ejemplos de cómo se puede utilizar para hacer lo que quiera.
Cuestiones relacionadas
- 1. Puntero a vacío en C++?
- 2. Cómo declarar un puntero vacío en C#
- 3. Equivalente a 'este' puntero
- 4. Puntero a un puntero en objetivo-c?
- 5. C++ borrar un puntero a un puntero
- 6. Ir equivalente a 'implosión' de PHP
- 7. En Objective C, ¿qué es el equivalente a pasar un puntero de función en C?
- 8. C++ de referencias entre un puntero a
- 9. programación genérica en C con puntero de vacío
- 10. Cuándo usar un puntero de vacío?
- 11. C: Tipo de extrapolación desde el puntero de vacío
- 12. ¿Cuál es la diferencia entre un puntero de vacío y un puntero NULL?
- 13. elenco de puntero indirecto a un puntero de Objective-C
- 14. ¿Cambios de bits en un puntero C?
- 15. ¿Cuál es el equivalente a 'ir' en MySQL?
- 16. puntero a un puntero
- 17. ¿Cuáles son las razones para emitir un puntero vacío?
- 18. C#: Puntero a duplicar
- 19. ¿Hay un equivalente a Groovy en C#?
- 20. ¿Hay un equivalente a typedef en C#?
- 21. pregunta C: eliminar la referencia única en un puntero de indirección doble ** vacío
- 22. ¿Aumentar el puntero del vacío en un byte? ¿por dos?
- 23. puntero constante frente a un puntero en un valor constante
- 24. iterador equivalente al puntero nulo?
- 25. Lanzar un puntero struct a otro - C
- 26. ¿Cómo declaras un puntero a una función que devuelve un puntero a una matriz de valores int en C/C++?
- 27. C: ¿cómo accedes al valor de un puntero a un puntero a ese valor?
- 28. Comprobación de un archivo vacío en C++
- 29. Textmate 'Ir al símbolo' equivalente para Vim
- 30. Equivalente a Double.doubleToLongBits en C#?
Solo quería agradecerle su respuesta. Acabo de modificar mi LinkedList para usar un tipo que implementa la interfaz en blanco. Es increíble lo simple que es lograr algo así con la interfaz y la escritura suelta. – evanmcdonnal
@evanmcdonnal: ¡De nada! Me alegra que haya funcionado para ti. :-) – ruakh