Только литерал nullptr должен использоваться в качестве ограничения нулевого указателя.
Только литерал nullptr должен использоваться в качестве ограничения нулевого указателя.
nullptr
был введен на C++ 11, чтобы поддержать концепцию указателя, который не указывает на доступный объект. Перед C++ 11, макро-NULL
и постоянный 0 был единственными способами задать постоянного нулевого указателя. Однако эти альтернативы nullptr
может также использоваться в целочисленных контекстах и может вызвать потенциальный беспорядок.
Например, если функция перегружается с аргументом указателя и целым числом:
void foo(int); void foo(int*);
NULL
как:foo(NULL);
Средство проверки правила отмечает использование NULL
макрос или постоянный 0 как указатели (через прямое присвоение, броски или в противном случае).
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
Группа: Стандартные преобразования |
AUTOSAR C++14 Rule M4-10-2
| AUTOSAR C++14 Rule M4-10-1
| Check AUTOSAR C++ 14 (-autosar-cpp14)