Я хотел бы получить стандартную ссылку, почему следующий код вызывает предупреждение о соответствии в C (проверено с помощью gcc -pedantic
; "переопределение typedef") , но нормально в C ++ ( g ++ -pedantic
):
typedef struct Foo Foo;
typedef struct Foo Foo;
int main() { return 0; }
Почему я не могу повторно определять typedef
в C?
(Это имеет практическое значение для структурирования заголовка проекта C .)