CERT C: Rec. MSC04-C

Используйте комментарии последовательно и читаемым способом

Описание

Управляйте определением

Используйте комментарии последовательно и читаемым способом. [1]

Реализация Polyspace

Это средство проверки проверяет на Использование/* и//в рамках комментария.

Примеры

развернуть все

Проблема

Проблема происходит, когда вы используете последовательности символов /* и // в рамках комментария.

Вы не можете аннотировать это правило в исходном коде. Для получения информации об аннотациях смотрите, Аннотируют Код и Скрывают Известные или Приемлемые результаты.

Риск

Эти последовательности символов не позволены в комментариях к коду потому что:

  • Если ваш код содержит /* или // в /* */ прокомментируйте, это обычно означает, что вы непреднамеренно закоментировали код.

  • Если ваш код содержит /* в // прокомментируйте, это обычно означает, что вы непреднамеренно не прокомментировали /* */ комментарий.

Пример Используемый в // Комментарии

int x;
int y;
int z;

void non_compliant_comments ( void )
{
    x = y //  	/* Non-compliant
        + z
        //  */
        ;
    z++;	//	Compliant with exception: // permitted within a // comment
}

void compliant_comments ( void )
{
    x = y /*  	Compliant
      + z
	  */
        ;
    z++;	//	Compliant with exception: // is permitted within a // comment
}

В этом примере, в non_compliant_comments функция, /* символ происходит в том, что, кажется, // прокомментируйте, нарушив правило. Из-за структуры комментария операцией, которая происходит, является x = y + z;. Однако без двух //- s, совершенно различная операция x=y; происходит. Это не ясно, какая операция предназначается.

Используйте формат комментария, который ясно дает понять ваше намерение. Например, в compliant_comments функция, ясно что операция x=y; предназначается.

Проверяйте информацию

Группа: Rec. 48. Разное (MSC)

Введенный в R2019a


[1]  Это программное обеспечение было создано MathWorks, включающим фрагменты: “Веб-сайт SEI CERT-C”, © 2017 Carnegie Mellon University, веб-сайт SEI CERT-C © 2017 Carnegie Mellon University”, CERT SEI C Кодирование Стандарта – Правил для Разработки безопасных, Надежных и Защищенных систем – 2 016 Выпусков”, © 2016 Carnegie Mellon University, and “CERT SEI Стандарт Кодирования C++ – Правил для Разработки безопасных, Надежных и Защищенных систем на C++ – 2 016 Выпусков” © 2016 Carnegie Mellon University, со специальным разрешением от его Института программной инженерии.

ЛЮБОЙ МАТЕРИАЛ УНИВЕРСИТЕТА КАРНЕГИ-МЕЛЛОН И/ИЛИ ЕГО ИНСТИТУТА ПРОГРАММНОЙ ИНЖЕНЕРИИ СОДЕРЖАЛ, ЗДЕСЬ ПРЕДОСТАВЛЯЕТСЯ НА ОСНОВЕ "ASIS". УНИВЕРСИТЕТ КАРНЕГИ-МЕЛЛОН НЕ ДАЕТ ГАРАНТИЙ НИКАКОГО ВИДА, ИЛИ ВЫРАЗИЛ ИЛИ ПОДРАЗУМЕВАЛ, ОТНОСИТЕЛЬНО ЛЮБОГО ВОПРОСА ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИЛ, ГАРАНТИЯ ПРИГОДНОСТИ ДЛЯ ЦЕЛИ ИЛИ ВЫСОКОГО СПРОСА, ИСКЛЮЧИТЕЛЬНОСТИ, ИЛИ ЗАКАНЧИВАЕТСЯ ПОЛУЧЕННЫЙ ИЗ ИСПОЛЬЗОВАНИЯ МАТЕРИАЛА. УНИВЕРСИТЕТ КАРНЕГИ-МЕЛЛОН НЕ ДАЕТ ГАРАНТИИ НИКАКОГО ВИДА ОТНОСИТЕЛЬНО СВОБОДЫ ОТ ПАТЕНТА, ТОВАРНОГО ЗНАКА ИЛИ НАРУШЕНИЯ АВТОРСКОГО ПРАВА.

Это программное обеспечение и сопоставленная документация не были рассмотрены, ни являются подтвержденным Университетом Карнеги-Меллон или его Институтом программной инженерии.