J'ai vu ce code pour trouver une mineure d'une matrice:Une expression étrange en C++ - qu'est-ce que cela signifie?
RegMatrix RegMatrix::Minor(const int row, const int col)const{
//printf("minor(row=%i, col=%i), rows=%i, cols=%i\n", row, col, rows, cols);
assert((row >= 0) && (row < numRow) && (col >= 0) && (col < numCol));
RegMatrix result(numRow-1,numCol-1);
// copy the content of the matrix to the minor, except the selected
for (int r = 0; r < (numRow - (row >= numRow)); r++){
for (int c = 0; c < (numCol - (col > numCol)); c++){
//printf("r=%i, c=%i, value=%f, rr=%i, cc=%i \n", r, c, p[r-1][c-1], r - (r > row), c - (c > col));
result.setElement(r - (r > row), c - (c > col),_matrix[r-1][c-1]);
}
}
return result;
}
C'est la première fois que je rencontre une ligne de code comme ceci: r < (numRow - (rangée> = numRow)).
Qu'est-ce que cela signifie?
oh je reçois ceci maintenant. – limlim
alors, comment ce code "ignore" les numéros de lignes et de colonnes donnés en copiant les valeurs dans la matrice? c'est toujours un code mystérieux pour moi ... – limlim