什麼是serial copy?它與深拷貝和淺拷貝不同嗎?什麼是串行復制?爲什麼它是這樣實現的?
根據Duff's device下的維基條目,它是傳統上實現爲:
do { //count > 0 assumed
*to = *from++; //Note that the 'to' pointer is NOT incremented
} while(--count > 0);
然後它使一個紙條,說
注意
to
不會增加,因爲達夫複製到一個存儲器映射的輸出寄存器。
我真的不明白這個說明。
如果to
指針不遞增,那麼循環的重點是什麼?
*to = from[count-1]; //does it not do the same thing?
我懷疑它有事情做與串行副本的定義:那麼,爲什麼,因爲它實現。
我們怎樣才能爲to
分配內存,以便循環會有所作爲?
也許是複製到FIFO BUFFER。例如。設備的硬件緩衝區。 – neagoegab