Дело в том, что я не сталкивался с ни одного использования Extern за 5 лет профессионального программирования C ++. Должен ли я чувствовать стыдно/удивлен?
Код: Выделить всё
// foo.hpp
extern int const ci;
…
// foo.cpp
int const ci = 3;
…
Если я правильно понял, это способ иметь постоянный int переменная, доступная для нескольких единиц перевода посредством включения Foo.hpp .
(я мог бы задать аналогичный вопрос для не
ant ci , но это запах кода самостоятельно, как это предлагается в комментариях.)
Код: Выделить всё
// foo.hpp
inline int const ci = 3;
…
// foo.cpp
…
Кроме того, первый подход даже не является жизнеспособным, если сущности в вопросах - rambdas, из которых я не могу назвать тип. foo.cpp , а не foo.hpp , к #include "bar.hpp" , тогда как последнее будет означать, что все включают все включения в кодовые или кодовые кодовые. Есть еще кое-что, что я не упускаю?>
Подробнее здесь:
https://stackoverflow.com/questions/797 ... code-smell