Re[7]: memcpy
От: Mr. None Россия http://mrnone.blogspot.com
Дата: 18.08.05 02:51
Оценка:
Здравствуйте, Erop, Вы писали:

E>Здравствуйте, ArtDenis, Вы писали:


RI>>>По-моему я довольно точно сказал. Ну если надо, пожалуйста

AD>>...

AD>>Т.к. это pod-тип, то можешь смело использовать memcpy. Скорость, как минимум, будет не меньше, чем при поэлементном копировании элементов.


E>Точно ли так? Там же в каждой структуре есть дырка в слово по крайней мере, и копиконструктор её пересылать не будет. Так что может memcpy и проиграет Кто его знает-то?


См. ниже
Автор: Mr. None
Дата: 16.08.05
, например, в VC 2003 копирование в цикле pod-типов разворачивается в rep movsd с любой оптимизацией, а memcpy только иногда (при компиляции с оптимизацией по объёмы заменяется на вызов call _memcpy)... Ясен пень, что без оптимизации всё остаётся на своих местах и поэтому не рассматривается...
Так что при компиляции в релизе никакого копирующего конструктора реально для них не генерируется и не вызывается (по крайней мере в этом случае)...
Компьютер сделает всё, что вы ему скажете, но это может сильно отличаться от того, что вы имели в виду.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.