Hoy en el trabajo nos encontramos con el siguiente código (algunos de ustedes podrían reconocerlo):¿Cuál es el código de C++ más difícil de entender que conoces?
#define GET_VAL(val, type) \
{ \
ASSERT((pIP + sizeof(type)) <= pMethodEnd); \
val = (*((type *&)(pIP))++); \
}
Básicamente tenemos una matriz de bytes y un puntero. La macro devuelve una referencia a una variable de tipo y avanza el puntero hasta el final de esa variable.
Me recordó las varias veces que necesitaba "pensar como un analizador sintáctico" para entender el código C++.
¿Conoces otros ejemplos de código que hicieron que te detengas y lo leyeras varias veces hasta que lograste comprender lo que se suponía que debía hacer?
No - Escribí esta pregunta para que podamos mostrar formas interesantes y confusas de usar C++. Entonces podemos aprender de esos ejemplos. –
Estos comentarios sobre las preguntas que se cierran son ridículos. – Terminus
En cualquier caso, este debería ser wiki de la comunidad. –