LINUX.ORG.RU

История изменений

Исправление pseudo-cat, (текущая версия) :

«разные типы» в терминах C == разные структуры. Просто кастуй указатель на разные структуры в какой-то один тип, желательно в более общий. Это у тебя типичное ООП решение.

указатель является лишней прослойкой + оверхед N*размер указателя. Каст всех структур в obj, я так не помню такое возможно ли в сишечке, я так понимаю даже не рассматривается в виду оверхед +100500.

не. Во первых есть каст, во вторых есть union. Можешь даже прилепить к каждой структуре указатель на VT, и будет у тебя virtual (pure)functions ничем не хуже C++(только страшенькие)

могу, а могу писать на ЯП ВУ и не запариваться такими блуднями)

Только я не понимаю, зачем ты решаешь задачу как ООП

потому что ООП это всем понятный и простой способ абстрагирования. Многие ЯП представляют свои способы абстрагирования, не ООП в том числе, С не представляет, на С можно написать такие средства, только можно сразу взять подходящий инструмент, а не заготовку

Исходная версия pseudo-cat, :

«разные типы» в терминах C == разные структуры. Просто кастуй указатель на разные структуры в какой-то один тип, желательно в более общий. Это у тебя типичное ООП решение.

указатель является лишней прослойкой + оверхед N*размер указателя. Каст всех структур в obj, я так не помню такое возможно ли в сишечке, я так понимаю даже не рассматривается в виду оверхед +100500.

не. Во первых есть каст, во вторых есть union. Можешь даже прилепить к каждой структуре указатель на VT, и будет у тебя virtual (pure)functions ничем не хуже C++(только страшенькие)

могу, а могу писать на ЯП ВУ и не запариваться такими блуднями)

Только я не понимаю, зачем ты решаешь задачу как ООП

потому что ООП это всем понятный и простой способ абстрагирования. Многие ЯП представляют свои способы абстракции, не ООП в том числе, С не представляет, на С можно написать такие средства, только можно сразу взять подходящий инструмент, а не заготовку