21 Haziran 2017 Çarşamba

std::auto_ptr Sınıfı

Copy Constructor
Sağ taraftaki kaynak kendi auto_ptr nesneme taşınır. Bu çağrıdan snra aağ tarafa erişilmemesi gerekir.
Şöyle yaparız.
auto_ptr<Shape> a(new Triangle);   // create triangle
auto_ptr<Shape> b(a);              // move a into b
double area = a->area();           // undefined behavior
Bu metodun kullanılduğı en güzel yer factory metodları. Şöyle yaparız.
auto_ptr<Shape> make_triangle()
{
  return auto_ptr<Shape>(new Triangle);
}

auto_ptr<Shape> b (make_triangle());      // move temporary into b
double area = make_triangle()->area();   // perfectly safe

Hiç yorum yok:

Yorum Gönder