Yang mungkin membuat Anda bertanya-tanya apakah informasi dan saran dalam edisi efektif C ++ 0-pre C ini tetap relevan. Saya senang melaporkannya. Anehnya, sebenarnya. Setelah menghabiskan hampir dua tahun mendalami detail C ++ 0x, saya berharap untuk sedikit mengeluh ketika saya meninjau daftar isi buku ini dengan mempertimbangkan C ++ 0x. Tentunya beberapa Item tidak pantas. Tetapi saran yang saya temukan terbukti masuk akal. Seharusnya pengembang C ++ 0x lebih suka const, enum, dan inline
#defines
(Butir 2)? Mereka harus. Haruskah mereka mencegah pengecualian meninggalkan destruktor (Butir 8)? Pasti. Haruskah mereka menggunakan objek untuk mengelola sumber daya? Menyatakan anggota data pribadi? Pertimbangkan alternatif untuk fungsi virtual? Parameter-parameter kode independen dari template? (Item 13, 22, 35, dan 44.) Ya, ya, ya, ya! Tujuan saya selalu untuk daftar isi C ++ yang Efektif untuk merangkum saran dalam buku ini, dan ringkasan itu tetap berlaku untuk pengembangan C ++ 0x untuk pengembangan C ++ “tradisional”. C ++ 0x adalah bahasa yang lebih besar, dan dalam beberapa hal itu adalah bahasa yang berbeda, tetapi teknik inti untuk membuat penggunaan yang efektif dari C ++ lama adalah inti untuk penggunaan C ++ 0x yang efektif juga.
Ini tidak berarti bahwa C ++ yang Efektif ini sangat cocok untuk C ++ 0x. Buku ini tidak membahas fitur-fitur baru C ++ 0x, sehingga Item tentang memanfaatkan fitur-fitur tersebut secara efektif tidak ada. C ++ 0xified C ++ Efektif tentu akan memiliki Item yang dikhususkan untuk memindahkan operasi, untuk inisialisasi seragam, dan untuk ekspresi lambda, dan itu mungkin memiliki seluruh bab tentang cara menggunakan API konkurensi secara efektif. Buku seperti itu juga akan berisi contoh-contoh yang berbeda, misalnya yang memanfaatkan variabel otomatis, rentang berbasis untuk loop, inisialisasi default di kelas, serta sesekali templat variadik. Sejauh buku ini gagal mendukung C ++ 0x, kesalahannya adalah kelalaian, bukan komisi.