﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-Error-随笔分类-没事瞎测测</title><link>http://www.cppblog.com/Error/category/20067.html</link><description /><language>zh-cn</language><lastBuildDate>Tue, 16 Oct 2012 05:43:20 GMT</lastBuildDate><pubDate>Tue, 16 Oct 2012 05:43:20 GMT</pubDate><ttl>60</ttl><item><title>1.self copy 的情况下move比copy快了一倍，a to b的情况move也比copy酷快3%左右。vs2008  32bit xp</title><link>http://www.cppblog.com/Error/archive/2012/10/16/193359.html</link><dc:creator>Enic</dc:creator><author>Enic</author><pubDate>Tue, 16 Oct 2012 03:51:00 GMT</pubDate><guid>http://www.cppblog.com/Error/archive/2012/10/16/193359.html</guid><wfw:comment>http://www.cppblog.com/Error/comments/193359.html</wfw:comment><comments>http://www.cppblog.com/Error/archive/2012/10/16/193359.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/Error/comments/commentRss/193359.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/Error/services/trackbacks/193359.html</trackback:ping><description><![CDATA[<p>&nbsp;</p> <p><a href="http://www.cppblog.com/images/cppblog_com/Error/WindowsLiveWriter/1.selfcopymovecopyatobmovecopy3vs200832b_A752/image_2.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.cppblog.com/images/cppblog_com/Error/WindowsLiveWriter/1.selfcopymovecopyatobmovecopy3vs200832b_A752/image_thumb.png" width="204" height="114"></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p> <p>#include &lt;iostream&gt; </p> <p>#include &lt;boost/timer.hpp&gt;  <p>int _tmain(int argc, _TCHAR* argv[])<br>{<br>&nbsp;&nbsp;&nbsp; boost::timer timer;  <p>&nbsp;&nbsp;&nbsp; const unsigned int TEST_DATA_LEN = 1440*900; <br>&nbsp;&nbsp;&nbsp; char* pDataA = new char[TEST_DATA_LEN];<br>&nbsp;&nbsp;&nbsp; memset(pDataA, NULL, TEST_DATA_LEN);<br>&nbsp;&nbsp;&nbsp; char* pDataB = new char[TEST_DATA_LEN];<br>&nbsp;&nbsp;&nbsp; memset(pDataB, NULL, TEST_DATA_LEN);  <p>&nbsp;&nbsp;&nbsp; double dCopyTime = 0;<br>&nbsp;&nbsp;&nbsp; timer.restart();<br>&nbsp;&nbsp;&nbsp; for (unsigned int uiLen = 0; uiLen &lt; 1020; uiLen++)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; memcpy(pDataA, pDataB, TEST_DATA_LEN);<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; dCopyTime = timer.elapsed();<br>&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; dCopyTime &lt;&lt; std::endl;  <p>&nbsp;&nbsp;&nbsp; double dMoveTime = 0;<br>&nbsp;&nbsp;&nbsp; timer.restart();<br>&nbsp;&nbsp;&nbsp; for (unsigned int uiLen = 0; uiLen &lt; 1020; uiLen++)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; memmove(pDataA, pDataA, TEST_DATA_LEN);<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; dMoveTime = timer.elapsed();<br>&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; dMoveTime &lt;&lt; std::endl;  <p>&nbsp;&nbsp;&nbsp; std::cout &lt;&lt; "self copy lost:" &lt;&lt; (dMoveTime - dCopyTime)*100 &lt;&lt; std::endl;  <p>&nbsp;&nbsp;&nbsp; return 0;<br>} <img src ="http://www.cppblog.com/Error/aggbug/193359.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/Error/" target="_blank">Enic</a> 2012-10-16 11:51 <a href="http://www.cppblog.com/Error/archive/2012/10/16/193359.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>