История изменений
Исправление pseudo-cat, (текущая версия) :
«разные типы» в терминах C == разные структуры. Просто кастуй указатель на разные структуры в какой-то один тип, желательно в более общий. Это у тебя типичное ООП решение.
указатель является лишней прослойкой + оверхед N*размер указателя. Каст всех структур в obj, я так не помню такое возможно ли в сишечке, я так понимаю даже не рассматривается в виду оверхед +100500.
не. Во первых есть каст, во вторых есть union. Можешь даже прилепить к каждой структуре указатель на VT, и будет у тебя virtual (pure)functions ничем не хуже C++(только страшенькие)
могу, а могу писать на ЯП ВУ и не запариваться такими блуднями)
Только я не понимаю, зачем ты решаешь задачу как ООП
потому что ООП это всем понятный и простой способ абстрагирования. Многие ЯП представляют свои способы абстрагирования, не ООП в том числе, С не представляет, на С можно написать такие средства, только можно сразу взять подходящий инструмент, а не заготовку
Исходная версия pseudo-cat, :
«разные типы» в терминах C == разные структуры. Просто кастуй указатель на разные структуры в какой-то один тип, желательно в более общий. Это у тебя типичное ООП решение.
указатель является лишней прослойкой + оверхед N*размер указателя. Каст всех структур в obj, я так не помню такое возможно ли в сишечке, я так понимаю даже не рассматривается в виду оверхед +100500.
не. Во первых есть каст, во вторых есть union. Можешь даже прилепить к каждой структуре указатель на VT, и будет у тебя virtual (pure)functions ничем не хуже C++(только страшенькие)
могу, а могу писать на ЯП ВУ и не запариваться такими блуднями)
Только я не понимаю, зачем ты решаешь задачу как ООП
потому что ООП это всем понятный и простой способ абстрагирования. Многие ЯП представляют свои способы абстракции, не ООП в том числе, С не представляет, на С можно написать такие средства, только можно сразу взять подходящий инструмент, а не заготовку