Я искал хороший ресурс, который дает возможность обсуждать лучшие практики условной компиляции и переносимости перекрестных платформ для проектов C.Условная компиляция - альтернативы реализации
Например:
Дать сетевую библиотеку, которая (в зависимости от основной платформы) либо использует TCP или SCTP. Обычный подход, вероятно, должен был бы определить общую спецификацию API и позволить make-файлу решить скомпилировать правильную реализацию.
Я не могу представить, что условная компиляция с использованием MACROS и дублирования кода является хорошей идеей здесь (так как такая реализация сети в основном одинакова, с разными примитивами SEND и RECEIVE).
Есть ли у кого-нибудь хорошие предложения или хороший ресурс, обсуждающий лучшие практики этих проблем?
Спасибо за ваш ввод!
Есть ли что-то не так с обычным подходом? Вы пытались найти какие-либо существующие примеры других библиотек, используя этот подход? –
проблема, с которой я столкнулась при использовании макросов для таких проблем, заключается в том, что (если они используются чаще), они делают тестирование очень громоздким. –