Unicorn with delicious cookie
Мы используем куки, чтобы пользоваться сайтом было удобно.
Хорошо
to the top
>
>
>
V3066. Possible incorrect order of...
menu mobile close menu
Проверка проектов
Дополнительная информация
toggle menu Оглавление

V3066. Possible incorrect order of arguments passed to method.

15 Фев 2016

Анализатор обнаружил подозрительную передачу аргументов в метод. Возможно некоторые аргументы перепутаны местами.

Пример подозрительного кода:

void SetARGB(byte a, byte r, byte g, byte b) 
{ .... }
void Foo(){
  byte A = 0, R = 0, G = 0, B = 0; 
  ....
  SetARGB(A, R, B, G);
  ....
}

Во время задания цвета объекта, перепутали синий и зелёный цвет.

Исправленный вариант кода должен выглядеть следующим образом:

SetARGB(A, R, G, B);

Рассмотри более сложный пример опечатки из реального проекта:

public virtual string Qualify(string catalog, 
                              string schema, 
                              string table)
{ .... }
public Table AddDenormalizedTable(....) {
  string key = subselect ?? 
    dialect.Qualify(schema, catalog, name); 
  ....
}

Согласно логике, можем предположить, что код должен выглядеть следующим образом:

public Table AddDenormalizedTable(....) {
  string key = subselect ?? 
    dialect.Qualify(catalog, schema, name); 
  ....
}

Данная диагностика классифицируется как:

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