Я работаю над так называемым проектом с открытым исходным кодом Hotspot и, просматривая его реализацию, обнаружил в структуре неприятное вложенное объединение, выглядящее следующим образом:
Код: Выделить всё
typedef struct RC_model_t_st
{
union
{
struct block_model_t_st *block;
struct grid_model_t_st *grid;
};
/* block model or grid model */
int type;
thermal_config_t *config;
}RC_model_t;
Насколько мне известно, в C/C++ это объединение недоступно. Так как же можно использовать объединение, объявленное таким образом, и для какой цели?
Спасибо!
Подробнее здесь:
https://stackoverflow.com/questions/136 ... th-no-name