Главное средство взаимодействия компилятора Why с внешним миром - это входной поток символов. Объект этого типа используется компилятором для чтения входного файла (или любого другого потока символов, например, содержимого окна IDE, в котором пишется программа).
Поток символов имеет два важных метода - GetChar и PutBack. Метод GetChar возвращает следующий символ из входного потока, а PutBack позволяет вернуть символ, взятый по ошибке (GetChar в следующий раз снова вернет этот символ).
Для того, чтобы символ можно было вернуть назад, TDoubleBufStream содержит специальную структуру - буфер символов SecondBuffer. Метод GetChar прежде всего проверяет этот буфер, и если в нем есть символ, то этот символ будет извлечен из буфера и возвращен. Если символов нет, вызывается метод предка TBufStream.Read для чтения символа из потока.
Copyright © Алексей Яковлев,
АВМ-008, факультет АТС, РГУПС.
Моя домашняя страничка:
http://www.yallie.narod.ru.