...ing logging 4.0

はてなブログに移行しました。D言語の話とかいろいろ。

右辺値参照のお勉強(2)

まだよく分かってない.
難しすぎるぞ右辺値参照!

class A {...};
A h(){
  A tmp;
  retrn tmp;
}
int main(){
  A   a = h();  // 一時オブジェクト tmp から a へのコピーが発生して無駄
  A&  b = h();  // エラー;一時オブジェクト tmp を左辺値参照で延命しようとしている
  A&& c = h();  // 一時オブジェクト tmp を延命せずに右辺値参照で c へと移動する
  return 0;
}

参照と共に寿命が尽きるオブジェクトに対しての左辺値・右辺値参照の挙動は分かった気がする.