上面的三种情况,都是给自己赋值,要在赋值时检查。
改正的办法:
1> 检查自赋值情况:
2> 改流程:
如果想把 identity test 加上,那么还要考虑自赋值的频率。频率小的话反而会降低效率,因为会影响CPU的prefetching、caching和pipelining。
3> copy and swap
有时为了优化效率,而采用传值的方式:
上面的三种情况,都是给自己赋值,要在赋值时检查。
改正的办法:
1> 检查自赋值情况:
2> 改流程:
如果想把 identity test 加上,那么还要考虑自赋值的频率。频率小的话反而会降低效率,因为会影响CPU的prefetching、caching和pipelining。
3> copy and swap
有时为了优化效率,而采用传值的方式: