как реализовать ООП на паскале версии в которой еще не появилось ООП Кто-нить знает это можно сделать вообще ?
вопрос с собеседования )
вопрос с собеседования )
Пиши ф-ции/процедуры, которые будут принмать на вход структуры - это инкапсуляция
Положить одну структуру первым полем в внутрь другой - это наследование
Положить указатель на функцию или процедуру внутрь структуры - это полиморфизм.
ООП появилось раньше, чем языки стали поддерживать специальные синтаксические ООП-конструкции
С помощью костылей, очевидно же! Специальный препроцессор, который будет раскрывать ооп-конструкции в процедурный код и принудительная линковка с рантайм-либой для исполнения всех этих извращений. Посмотри как objective-c сделан - это обычная сишка, по сути, просто с перечисленными костылями, а ООП там более-менее.
в структуру как одни из элементов записываются указатели на процедуры работающие со структурой этого типа - вот-те и функции класса.
Неудобно. но возможно.
Хотя там скорее реализация не ООП (ОбъектноОриентированного) , а Допускающего через кучу геморроя использовать способы заимствованные из ООП