#c
Вычитал на сайте это В некотором коде C широко распространено использование typedef вместе с анонимными структурами. Зачем пользоваться анонимными структурами вместе с typedef вместо простого объявления.
Ответы
Ответ 1
В С, в отличие от С++, слово struct приходится постоянно использовать с именем типа - struct Pair { int a, b; }; struct Pair z; Просто Pair z; будет не понято компилятором. Чтобы избежать этой проблемы, можно дописать typedef struct Pair mypair; после чего mypair z; станет корректным объявлением. Получается, что само имя Pair de facto не используется нигде, кроме как при объявлении структуры и в typedef. Так не проще ли его вообще выкинуть и использовать typedef с анонимной структурой - typedef struct { int a, b; } pair; pair z; "По-моему, так" (с) Пух
Комментариев нет:
Отправить комментарий