Вопрос
У меня есть два компилятора на моем аппаратном С++ и C89
Я думаю об использовании С++ с классами, но без полиморфизма (чтобы избежать vtables). Основными причинами Id, использующими С++, являются:
- Я предпочитаю использовать встроенные функции вместо макроопределений.
- Мне нравится использовать пространства имен, поскольку я префиксы загромождают код.
- Я вижу, что С++ немного более безопасен в основном из-за шаблонов и многословного литья.
- Мне очень нравятся перегруженные функции и конструкторы (используемые для автоматического кастинга).
Вы видите какую-либо причину придерживаться C89 при разработке для очень ограниченного оборудования (4 КБ ОЗУ)?
Заключение
Спасибо за ваши ответы, они были действительно полезны!
Я думал, что этот предмет пройдет, и я буду придерживаться C главным образом потому, что:
- Проще предсказать действительный код в C, и это действительно важно, если у вас есть только 4 КБ памяти.
- Моя команда состоит в основном из разработчиков C, поэтому расширенные возможности С++ не будут часто использоваться.
- Я нашел способ встроенных функций в моем компиляторе C (C89).
Трудно принять один ответ, поскольку вы предоставили столько хороших ответов. К сожалению, я не могу создать вики и принять его, поэтому я выберу один ответ, который заставил меня больше всего подумать.