1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/emnetsliym-riot

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
CODING_CONVENTIONS_C++.md 2.7 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 26.11.2024 09:43 5e774d9

Шаблоны

Чтобы код оставался читаемым, несмотря на синтаксический шум, у нас есть несколько дополнительных правил форматирования кода метапрограммирования:

  • операторы using name = ... всегда располагайте сразу после =, если они не помещаются в одну строку;
  • учитывайте семантику функции метапрограммирования. Например, std::conditional — это конструкция «если-то-иначе». Следовательно, разместите условие if на отдельной строке и сделайте то же самое для двух случаев;
  • используйте один уровень отступа для каждого «открытого» шаблона и размещайте закрывающий >, >::type или >::value на отдельной строке. Например:
using optional_result_type =
    typename std::conditional<
        std::is_same<result_type, void>::value,
        bool,
        optional<result_type>
    >::type;
// думайте об этом как о следующем (недействительном C++):
auto optional_result_type =
    conditional {
        if result_type == void
        then bool
        else optional<result_type>
    };

Обратите внимание, что это не обязательно при простом определении псевдонима типа. При работе с «обычными» шаблонами допустимо делать отступ на основе позиции открывающего <, например:

using response_handle_type = response_handle<Subtype, message, ResponseHandleTag>;

Макросы препроцессора

  • Используйте макросы только тогда, когда вы не можете получить тот же результат, используя встроенные функции или правильные константы.
  • Имена макросов имеют форму RIOT__.

Комментарии

  • Комментарии Doxygen начинаются с ///.
  • Вместо средств форматирования Doxygen используйте Markdown.
  • Используйте @cmd вместо \cmd.
  • Для определения основных комментариев, которые не должны быть проглочены Doxygen, используйте //.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/emnetsliym-riot.git
git@api.gitlife.ru:oschina-mirror/emnetsliym-riot.git
oschina-mirror
emnetsliym-riot
emnetsliym-riot
master