>
>
>
V6005. The 'x' variable is assigned to …


V6005. The 'x' variable is assigned to itself.

Анализатор обнаружил потенциальную ошибку, связанную с тем, что значение переменной присваивается само себе.

Рассмотрим пример:

void change(int width, int height, int length)
{
  this.mWidth = width;
  this.mHeight = height;
  this.mLength = this.mLength;
}

Из кода видно, что предполагалось изменить значения свойств объекта в соответствии с принятыми в методе параметрами, но произошла ошибка и свойству 'mLength' вместо значения аргумента 'length' присвоилось значение самого же свойства.

Тогда корректный код должен был бы выглядеть так:

void change(int width, int height, int length)
{
  this.mWidth = width;
  this.mHeight = height;
  this.mLength = length;
}

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

  • CERT-MSC56-J

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