«push-back» etiketlenmiş sorular


2
Zaten oluşturulmuş nesneler için std :: move ile emplace_back () arasında C ++ 11 push_back () verimliliği
C ++ 11'de emplace_back(), push_back()yerinde yapılanmaya izin verdiği için genellikle (verimlilik açısından) tercih edilir , ancak bu push_back(std::move()), önceden oluşturulmuş bir nesne ile kullanıldığında hala geçerli midir? Örneğin emplace_back(), aşağıdaki gibi durumlarda hala tercih ediliyor mu? std::string mystring("hello world"); std::vector<std::string> myvector; myvector.emplace_back(mystring); myvector.push_back(std::move(mystring)); // (of course assuming we don't care …

2
Bir std :: vector eklerken sınıf alanlarıyla garip davranış
Aşağıdaki durumda bazı garip davranışlar (clang ve GCC) buldum. nodesBir elemanım, bir sınıf örneği olan bir vektörüm var Node. Daha sonra vektöre nodes[0]yeni eklenen bir fonksiyon çağırıyorum Node. Yeni Düğüm eklendiğinde, çağıran nesnenin alanları sıfırlanır! Bununla birlikte, işlev bittiğinde tekrar normale dönüyor gibi görünüyorlar. Bunun minimal tekrarlanabilir bir örnek olduğuna …
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.