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

OSCHINA-MIRROR/mirrors-mgba

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
CONTRIBUTING.md 3.9 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 26.11.2024 19:48 c9d7773

Однострочные блоки

Хорошо:

if (условие) {
    блок;
} else if (условие2) {
    блок2;
} else {
    блок3;
}

Плохо (отдельная строка):

if (условие)
{
    блок;
}
else if (условие2)
{
    блок2;
}
else
{
    блок3;
}

Плохо (отсутствие фигурных скобок):

if (условие)
    оператор;
else if (условие2)
    оператор2;
else
    оператор3;

Плохо (пробел отсутствует):

if (условие){
    блок;
}

Пробелы

Отступ должен выполняться с помощью табуляции и соответствовать уровню фигурных скобок. Выравнивание в строке должно быть умеренным, но только с использованием пробелов.

Защита заголовков

Для защиты заголовков C define должен быть именем файла (включая H), все буквы заглавные, вместо знаков препинания используются подчёркивания.

Хорошо:

#ifndef FILE_NAME_H
#define FILE_NAME_H

// Заголовок

#endif

В #endif комментарии не допускаются.

Для Qt (защита заголовков C++) define должен начинаться с QGBA_ и не включать _H, в остальном он такой же. Это в основном по причинам наследия и может измениться в будущем.

Хорошо:

#ifndef QGBA_FILE_NAME
#define QGBA_FILE_NAME

// Заголовок

#endif

Прочее

Операторы блоков, такие как if, while и for, должны иметь пробел между типом блока и круглыми скобками.

Хорошо:

while (условие) {
    блок;
}

Плохо:

while(условие) {
    блок;
}

В коде C используйте 0 вместо NULL. Это в основном по причинам наследия и может измениться в будущем. В коде C также следует использовать типы bool и значения true и false вместо 1 и 0, где это применимо. В коде C++ используйте nullptr вместо NULL или 0.

Если у оператора нет тела, использование фигурных скобок не требуется, можно использовать точку с запятой. Это не обязательно, но рекомендуется.

Хорошо:

while (f());

Плохо:

while (f()) {}

Для бесконечных циклов, которые внутренне прерываются, предпочтительнее использовать while (true), а не for (;;).

Лицензирование

mGBA лицензируется под Mozilla Public License version 2.0. Это влечёт за собой несколько последствий, когда речь заходит о добавлении кода в mGBA.

  • Новый код для mGBA будет лицензироваться под лицензией MPL 2.0.
  • Код с лицензией GPL нельзя добавлять в основной поток mGBA, но его можно связать с mGBA при компиляции.
  • Код MIT, BSD, CC0 и т. д. можно добавить в основной поток mGBA, но предпочтительно в раздел third-party, если это применимо.

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

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

1
https://api.gitlife.ru/oschina-mirror/mirrors-mgba.git
git@api.gitlife.ru:oschina-mirror/mirrors-mgba.git
oschina-mirror
mirrors-mgba
mirrors-mgba
master