Почему после struct, union, class нужно ставить точку с запятой, а после функций - нет?

Почему после struct, union, class нужно ставить точку с запятой, а после функций - нет?


Ответы (1 шт):

Автор решения: Mikhailo

Думаю, что потому, что это объявление типа, которое может быть - без точки с запятой - началом объявления переменной, функции и так далее.

Например,

struct A { int a; } a;

или

struct A { int a; } b(int с);

Точка с запятой четко ограничивает и отделяет объявление типа.

→ Ссылка