Jika Anda menggunakan kompiler pra TR1 maka pointer pintar
boost::shared_ptr
boost::weak_ptr
boost::scoped_ptr
boost::scoped_array
boost::shared_array
Jika kompiler Anda sudah memiliki pointer pintar, gunakan saja.
Alasannya jelas C ++ tanpa smart pointer pada dasarnya bukan C ++
Meningkatkan ptr_contaier libraries.
Semua kontainer STL diimplementasikan kembali secara khusus untuk memegang pointer. Kontainer tidak hanya mengambil kepemilikan pointer sehingga ketika kontainer dihancurkan secara otomatis menghancurkan semua pointer. TETAPI juga menyediakan akses ke elemen sebagai referensi objek normal (bukan pointer) ini membuatnya mudah untuk menggunakan objek dalam algoritma standar tanpa fungsi pembungkus.
Meningkatkan perpustakaan lambda. (lihat komentar di bawah)
Fungsi dan pengikat STL OK untuk hal-hal sederhana. Tapi boost :: lambda mengambil langkah berikutnya dan membuat segalanya lebih sederhana ketika menggunakan algoritma standar.
boost :: any dan boost :: varian
Ketika Anda perlu memegang benda tanpa ingin tahu jenisnya yang tepat.
Wadah multi indeks
Wadah yang memungkinkan berbagai cara berbeda untuk mengakses elemen.
Lewatlah sudah hari-hari ketika Anda memiliki vektor objek dan peta terpisah untuk vektor pencarian cepat. Ini mengurangi pelat ketel yang harus Anda tulis untuk mempertahankan kedua wadah saat memasukkan / menghapus elemen ke dalam wadah.
boost :: lexical_cast
Mungkin yang paling tidak berguna dalam kehidupan nyata tetapi banyak kesenangan untuk dimainkan adalah boost :: lexical_cast. Itu mengkonversi objek apa pun ke / dari string (selama jenis itu memiliki << dan >> operator yang tepat ditentukan). Sangat berguna untuk membuang pesan kesalahan saat menghapus bug.