В C ++ нет плюсов. Этот стиль пришел из C, где вы не могли просто использовать имя структуры в качестве типа. Э.Г.
struct X
{
int x;
};
X a; //compiler error
struct X b; //OK
во избежание использования разработанного спецификатора типа, такого как struct X a
, или enum E e;
и т. Д. В C, обычной практикой является ввод имени по умолчанию
Е.Г.
typedef struct X_ { ... } X;
Теперь X a;
тоже в порядке.
Естественно, в C ++ нет необходимости делать это.