Данное диагностическое правило основано на руководстве MISRA (Motor Industry Software Reliability Association) по разработке программного обеспечения.
Это правило актуально только для C++. Функция 'main' должна присутствовать только в глобальном пространстве имён, чтобы разработчик точно понимал, что если она есть, то всегда является точкой входа в программу.
Пример кода, на который анализатор выдает предупреждение:
namespace N1
{
int main();
}
Другой пример со срабатыванием анализатора:
namespace
{
int main();
}
Код, переписанный в соответствии с правилом, может выглядеть так:
namespace N1
{
int start();
}
Данная диагностика классифицируется как:
|