Простая и маленькая идея, которая, вероятно, не сильно влияет.Если вы выполняете итерацию по массиву вручную, скажем, как в следующем простом примере:
for (int i = 0; i < myArr.Length; i++)
{
Console.WriteLine(myArr[i]);
}
Имеет ли смысл хранить myArr.Length локально?Например:
int myArrLen = myArr.Length
for (int i = 0; i < myArrLen; i++)
{
Console.WriteLine(myArr[i]);
}
Требуется ли дополнительная работа для доступа к myArr.Length по сравнению с локальной переменной myArrLen?Должен ли он делать эту память доступной к каждой итерации цикла for, или он будет автоматически хранить myArr.Length локально?Не могли бы вы заметить разницу, если бы массив содержал, скажем, 100 000 или 1 000 000 членов?