Witam mam znaleźć ten kod w dokumentacji systemu WindowsC++ [b] operator
ale ja nie rozumiem co oznacza
[&]
tylko proszę można wyczyścić mi, co należy zrobić ??
to nie jest C++ standardowe prawda?
Jest to kod:
void parallel_matrix_multiply(double** m1, double** m2, double** result, size_t size)
{
parallel_for (size_t(0), size, [&](size_t i)
{
for (size_t j = 0; j < size; j++)
{
double temp = 0;
for (int k = 0; k < size; k++)
{
temp += m1[i][k] * m2[k][j];
}
result[i][j] = temp;
}
});
}
"udostępnia wszystkie argumenty funkcji' parallel_matrix_multiply() 'przez odniesienie do funkcji lambda"? –
@SteveJessop, '[&]' czyni wszystkie zmienne w zakresie dostępnym w ciele funkcji lambda przez odniesienie, włączając w to argumenty funkcji 'parallel_matrix_multiply()'.Czy jest to błędne, czy tylko myląco sformułowane? – hmjd
To prawda (o ile rozumiem: nie wiem, czy są jakieś mylące przypadki). Moja uwaga była po prostu próbą uczynienia zdania nieco mniej nieporęcznego, przepraszam, jeśli nie przekazałem tego. –