SORU
16 ŞUBAT 2010, Salı


Std::Kopyalama Bir push_back ile nesneleri vektör?

Valgrind ile soruşturma bir sürü sonra, sonuç std yaptım::vektör push_back istediğiniz bir nesnenin bir kopyasını oluşturur.

Bu gerçekten doğru mu ? Vektör başvuramaz tutmak ya da bir kopya olmadan bir nesneye bir işaretçi ?!

Teşekkürler

CEVAP
16 ŞUBAT 2010, Salı


Evet, std::vector<T>::push_back() bağımsız bir kopyasını oluşturur ve vektör saklar. Eğer vektör nesnelere işaretçiler saklamak istiyorsanız, std::vector<whatever> yerine std::vector<whatever*> Bir oluşturun.

Ancak, nesne işaretçileri tarafından başvurulan vektör onları (akıllı işaretçiler sorunu çözmek deyim bu DEMİRYOLU kullanan) başvuruda bulunduğu süre geçerli kalır emin olmak gerekir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ELPRESADOR

    ELPRESADOR

    21 HAZİRAN 2008
  • Gigawipf

    Gigawipf

    18 ŞUBAT 2010
  • FF Radioo

    FF Radioo

    14 ŞUBAT 2007