почему CAtlArray медленнее вектора? или это компилятор хитро оптимизит?
как заставить CAtlArray работать побыстрее, не хочется использовать вектор из-за увеличения размера программы.
Здравствуйте, Аноним, Вы писали:
А>почему CAtlArray медленнее вектора? или это компилятор хитро оптимизит? А>как заставить CAtlArray работать побыстрее, не хочется использовать вектор из-за увеличения размера программы.
На чём именно медленнее?
Если на добавлении, при этом добавляются много элементов, то ожидаемо — там рост начиная с некоторого размера становится линейным.
Русский военный корабль идёт ко дну!
Re[2]: быстродействие CAtlArray
От:
Аноним
Дата:
18.02.10 11:23
Оценка:
Здравствуйте, Alexander G, Вы писали:
AG>На чём именно медленнее? AG>Если на добавлении, при этом добавляются много элементов, то ожидаемо — там рост начиная с некоторого размера становится линейным.
да, именно на добавлении, причем элементов мало, зато добавление и очистка весьма часто происходят. в общем, лидером для этой задачки оказался vector, потом catlsimplearray, catllist, catlarray. атларрай оказался медленнее раза в три . не понял, правда, почему резервирование не помогло catlarray.
А>да, именно на добавлении, причем элементов мало, зато добавление и очистка весьма часто происходят.
Вектор не уменьшает зарезервированый ранее размер при очистке, а CAtlArray при очистке освобождает буфер.
Русский военный корабль идёт ко дну!
Re[4]: быстродействие CAtlArray
От:
Аноним
Дата:
18.02.10 15:56
Оценка:
Здравствуйте, Alexander G, Вы писали:
AG>Вектор не уменьшает зарезервированый ранее размер при очистке, а CAtlArray при очистке освобождает буфер.
вот это и плохо. впрочем, нашел на просторах инетки какой-то лисапед на базе atlsimplearray, который таки уделал вектор в 2! раза. для конкретной задачи естественно. хотя наверное и вектор можно соптимизировать, но цель достигнута — вектор убран