Wyrażenie musi być modyfikowalną wartością l

Mam następujący kod:

int M = 3; 
int C = 5; 
int match = 3;
for ( int k =0; k < C; k ++ )
{
    match --; 
    if ( match == 0 && k = M )
    {
         std::cout << " equals" << std::endl;
    }
}

Ale daje błąd mówiąc:

Błąd: wyrażenie musi być wartością modyfikowalną

na tej linii „jeśli”. Nie próbuję tutaj modyfikować wartości „match” lub „k”, ale dlaczego ten błąd? jeśli piszę tylko tak:

if ( match == 0 )

jest w porządku. Czy ktoś mógłby mi to wyjaśnić?

questionAnswers(4)

yourAnswerToTheQuestion