Суть проблемы в том, что бы два объекта одинакового типа имели разную реализацию(сказанул):
Типа такого
Цитата:
MODULE MyProg;
TYPE MyType = POINTER TO EXTENSIBLE RECORD; END;
PROCEDURE (m: MyType) DoSomeThing (MyData: INTEGER), NEW, EMPTY;
VAR MyProc1: MyType;
MyProc2: MyType;
BEGIN
MyProc1.DoSomeThing(1);
MyProc2.DoSomeThing(2);
END MyProg.
Но, что бы у MyProc1 и у MyProc2 были разные реализации процедуры DoSomeThing. Такое реально сделать?
Или надо для MyProc1 и MyProc2 делать разные реализации типов MyType? А если нужно не два MyProc, а 100. Для каждого свою реализацию типа MyType делать?
PS: Все наверное очень просто, но пока решение для меня не очевидно.