Готовый перевод Google C++ Style Guide / Google C++ Style Guide: The -inl.h Files
Разрешается использовать суффикс -inl.h в названиях файлов, содержащих сложные (нетривиальные) встраиваемые функции, если таковые понадобились.
Тело встраиваемой функции должно находиться в заголовочном файле, чтобы компилятор имел к нему доступ отовсюду, где эта функция вызывается, и мог его успешно встроить. Однако, код, относящийся непосредственно к реализации, по праву следует писать в .cc файлах, и мы не приветствуем наличие большого количества подобного кода в .h файлах, если только это не улучшает его читаемость или производительность.
Если определение встраиваемой функции короткое, с крайне небольшой внутренней логикой, вы должны поместить ее код в заголовочный файл. Например, акцессоры и мутаторы обычно должны быть внутри определения класса. Более сложные встраиваемые функции также могут быть помещены в заголовочный файл для удобства реализации и вызова, но если это делает заголовочный файл слишком громоздким, вы можете вместо этого вынести их в -inl.h файл. Это отделяет реализацию от определения класса, но по-прежнему позволяет включать реализацию по необходимости.
Также -inl.h файлы используются для определения шаблонов функций. Это позволяет сохранять их читаемость.
Не забывайте, что -inl.h, как и любой другой заголовочный файл, должен содержать защиту от повторного включения (header guard)
Внимание! Этот перевод, возможно, ещё не готов.
Его статус: идёт перевод
Переведено на Нотабеноиде
http://notabenoid.org/book/32830/114584
Переводчики: kikobyte, mayorovp
Настройки
Готово:
