C6319
Обновлен: Ноябрь 2007
C6319
Предупреждение C6319: использование оператора-запятой в выражении приводит к тому, что левый аргумент будет пропущен, если он не имеет побочных эффектов.
Это предупреждение указывает на то, что в тестовом контексте подчиненное выражение пропускается из-за оператора-запятой (,). Оператор-запятая имеет ассоциативность слева направо. Результатом оператора-запятой является последнее вычисленное выражение. Если выражение слева от оператора-запятой не имеет побочных эффектов, компилятор может не создать код для этого выражения.
Пример
Это предупреждение создается следующим кодом:
void f()
{
int i;
int x[10];
// code
for ( i = 0; x[i] != 0, x[i] < 42; i++) // warning
{
// code
}
}
Чтобы исправить это предупреждение, используйте оператор логического И, как показано в следующем коде:
void f()
{
int i;
int x[10];
// code
for ( i = 0; (x[i] != 0) && (x[i] < 42); i++)
{
// code
}
}