SORU
5 HAZİRAN 2014, PERŞEMBE


Unique_ptr taşıdıktan sonra nullptr saklamak için garanti edilir?

Unique_ptr taşıdıktan sonra nullptr saklamak için garanti edilir?

std::unique_ptr<int> p1{new int{23}};
std::unique_ptr<int> p2{std::move(p1)};
assert(!p1); // is this always true?

CEVAP
5 HAZİRAN 2014, PERŞEMBE


Evet, move sonra nullptr karşılaştırabilirsiniz ve eşit karşılaştırmak için garanti edilir.

Dan20.8.1/4 §[benzersiz.pointer]

Ayrıca, u talep üzerine, benzersiz bir işaretçi u2 mülkiyet transferi. Böyle bir transfer tamamlandığında, aşağıdaki tutun postconditions:u2.p pre-transfer u.p eşittiru.p nullptr eşittirve

(10* *üye daha önce açıklandığı gibi -;benzersiz bir işaretçi ikinci bir nesne p bir işaretçi depolar 11* *bir nesnedir)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ItZWaffleS420

    ItZWaffleS42

    9 EYLÜL 2011
  • mliskIT

    mliskIT

    29 Mart 2012
  • SegaAmerica

    SegaAmerica

    5 Mart 2008