Здравствуйте, hokkaido, Вы писали:
H>Спасибо за низкоквалифицированых кодеров (около 10ти лет занимался embedded, писал в основном на plain C). H>Дело в том, что MyClass(a).func(b) действительно работает медленнее (иногда МНОГО медленнее). Например если таблица виртуальных функций лягла не в ту память,
Решается правкой linker script-ов. Н>или если MyClass распределен на хипе (а хип соответственно лег не в ту память). Именно из-за сложностей с упревлением размещений в embedded (точнее в той его части где производительность супер-важна) используют С а не ++. А my_struct я могу (как правило) положить туда куда надо. В общем embedded гораздо интереснее — сейчас скучаю. Это порой как складывать интереснейший пазл.
Пишется customный operator new().
В обоих случаях нужно ОДИН раз разобраться с новой примочкой (а-ля linker script), после чего вся последующая сложность разработки сократится пропорционально. Ну, или не разбираться и "размазывать" сложность по всему циклу разработки... Примерно как "купить квартиру" vs. "снять квартиру".