V2002. Consider using the 'Ptr' version of the 'foo' function here.
Данное диагностическое правило добавлено по просьбе пользователей.
Анализатор позволяет обнаружить вызов функций, у которых существует 'Ptr' аналог. Имеются в виду функции, имеющие в составе своего названия суффикс Ptr. Примеры расширенных функций: SetClassLongPtr, DSA_GetItemPtr.
Рассмотрим исходный код:
void foo(int a);
void fooPtr(int a, bool b);
void foo2();
...
void test()
{
foo(1); // V2002
foo2(); // OK
}
В месте вызова функции "foo", будет выдано диагностическое сообщение V2002, так как имеется функция с тем же именем, но оканчивающаяся на "Ptr". Функция "foo2" не имеет альтернативного варианта, и диагностическое сообщение выдаваться не будет.
Сообщение V2002 будет также выдано для случая:
void fooA(char *p);
void fooPtrA(char *p, int x);
...
void test()
{
fooA(str); // V2002
}
Родственным диагностическим сообщением является V2001.
Данная диагностика классифицируется как:
|