Форум » [x]Harbour » Препроцессор » Ответить
Препроцессор
Pasha: Команда препроцессора транслируется как положено: #xcommand enddb => dbSkip() ; enddo а такая команда: #xcommand enddb ref => MeterRefresh() ; dbSkip() ; enddo ; MeterEnd() транслируется в MeterRefresh() ; dbSkip() ; enddo в которой нет последнего оператора. Почему так ?
Ответов - 3
SergKis: Pasha [pre2] #xcommand startdb => do while !Eof() #xcommand enddb refr => MeterRefresh() ; dbSkip() ; end ; MeterEnd() дадут результат while !Eof() MeterRefresh() ; dbSkip() ; end ; MeterEnd() т.е. убирается do из do while и происходит обрезание по enddo ; MeterEnd() [/pre2]
SergKis: PS[pre2] #xcommand startdb => do while !Eof() #xcommand enddb refr => MeterRefresh() ; dbSkip() ; end do ; MeterEnd() => while !Eof() MeterRefresh() ; dbSkip() ; end ; MeterEnd() т.е. ok! [/pre2]
Pasha: Так работает, спасибо
полная версия страницы