# V6027. Variables are initialized through the call to the same function. It's probably an error or un-optimized code.

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

Рассмотрим наиболее простой случай:

    sz1 = s1.length();
    sz2 = s1.length();

Двум разным переменным присваивается один и тот же размер строки. Глядя на переменные 'sz1' и 'sz2' можно сделать вывод, что произошла опечатка. Корректный фрагмент кода будет выглядеть следующим образом:

    sz1 = s1.length();
    sz2 = s2.length();

Если анализатор выдал сообщение на фрагмент кода:

    x = expression;
    y = expression;

Варианты действий следующие:

- Код содержит ошибку и необходимо подкорректировать 'expression'.
- Код верен. Если 'expression' требует много вычислений, то лучше написать 'y = x;'.

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