Татарин>> Эээ... позвольте, однако ж, добрый сэр, Вас спросить: а в сравнении с чем? GOGI> Пишу же, копирование массива во временный и выполнение всех операций с ним дает ускорение в несколько порядков. Насколько я могу представить, как не специалист получение что одного элемента, что всего массива из класса одномоментно занимает примерно одинаковое время, достаточно большое.
Нет, что-то тут не так. Вот просто работа с таким массивом (как я выше написал) - и есть максимально быстрое из возможного. Там нечего ускорять в принципе, это не свойство, нет посредников. Это тупо данные, член класса. Если ты утверждаешь, что у тебя вдруг такая конструкция работает
на порядки аж медленнее, чем некий "временный" массив (чем он отличается-то?), то у меня достаточно своего опыта, чтоб попервой предположить, что ты что-то напутал.
О чём я говорю?
code text
class SomeClass
{
public int[] m_someArray;
public SomeClass(){m_someArray = new int[1000000];}
};
void SomeShitHappens()
{
SomeClass sc;
for(int i = 0;;)sc.m_someArray[i++] = 0;
}
Я утверждаю, что этот код будет вылетать в дебаггер через ровно такое же время, как и
code text
void SomeShitHappens()
{
int []someArray = new int[10000000];
for(int i = 0;;)someArray[i++] = 0;
}
Приведи
конкретный код, который у тебя работает медленно.
Иначе понять тебя реально сложно.
...А неубитые медведи делили чьи-то шкуры с шумом.
Боюсь, мы поздно осознали, к чему всё это приведёт.