ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
24 ноября
16430
iit (09.11.2004 15:25, просмотров: 2235)
Вопрос к знатокам Си Предистория: ФАЙЛ 1.h #include "iolpc210x.h" enum tMyType { .... }; ФАЙЛ 1.cpp #include "1.h" ФАЙЛ 2.h #include "iolpc210x.h" void MyFunc(tMyType MyVar); ФАЙЛ 2.cpp #include "2.h" void MyFunc(tMyType MyVar) { }; При компиляции 2.срр выдается ошибка: identifier "tMyType" is undefined с указанием на модуль 2.h - вполне логично. Тогда делаю следующее в ФАЙЛЕ 2.h #include "iolpc210x.h" #include "1.h" void MyFunc(tMyType MyVar); Оказывается что не все так просто. Вот ответ компилятора: invalid redeclaration of type name "tMyType" ВНИМАНИЕ ВОПРОС! :) 1.Как сделать тип tMyType глобальным 2. Почему не выдается сообщение "invalid redeclaration of type name "Name"" для типов (или переменных) объявленных в модуле iolpc210x.h используемом и в 1.h и в 2.h Компилятор ИАРовский