Надо понять куда пихать noexcept, 2 совсем мелких вопроса + бонус вопрос для меня про(.inl)

Есть файлы:

/*A.hpp для объявления*/
void sum();

/*A.inl для определения*/
void sum(){/*что-то*/};

Не очень понимаю, в каком файле ставить noexcept, то есть я уверен что исключений не будет, а так же понимаю что правильнее будет поставить в объявлении void sum() noexcept; и после в определении void sum() noexcept {/*что-то*/};.

Допустим с inline понятно. Если я поставлю в файле определения inline, то я попрошу компилятор встроить его в объявление. А если вставлю inline соответственно в объявлении, то компилятор мб встроит его когда буду вызывать уже где-то. Тут вопросов нету. (с inline просто пример,тут мне понятно)

вопрос 1 Куда мне вставлять noexcept, в объявление или в определение? Выбираю ответ и туда и туда, но тут я не оч уверен Х)

вопрос 2 Почему видя проекты написанные недавно, я замечаю что noexcept появляется очень редко или в прицепи его вообще нету. Ведь если я уверен что точно не будет исключения, почему не ускорить выполнение спамя noexcept везде где возможно? (речь сейчас о моментах где уверен что не упадёт приложение)

бонус-вопрос Много чего видел и в этом многом часто используют разные форматы для разделения, оценил, удобно. Но несёт ли какой-то скрытый посыл использование формата .inl (конкретно этого формата) ? (Спасибо @user7860670 подтолкнул на ответ,как я понял Нет не несёт скрытого смысла Вопрос отпрадает)

Иногда попадаются такие тонкости и хз где находить подобное, вроде пишут, но не заостряют внимания на мелочах =)


Ответы (0 шт):