sebagai contoh: Beta_ab&& Beta::toAB() const { return move(Beta_ab(1,
sebagai contoh: Beta_ab&& Beta::toAB() const { return move(Beta_ab(1,
Saya memiliki kelas dengan anggota unique_ptr. class Foo { private: std::unique_ptr<Bar> bar; ... }; Bilah adalah kelas pihak ketiga yang memiliki fungsi create () dan fungsi destroy (). Jika saya ingin menggunakan std::unique_ptrdengan itu dalam fungsi yang berdiri sendiri yang bisa...
Apa perbedaan antara -std=c++11dan -std=gnu++11sebagai parameter kompilasi untuk gcc dan dentang? Pertanyaan yang sama dengan c99dan gnu99? Saya tahu tentang C ++ dan standar C, itu adalah perbedaan dalam parameter yang menarik minat saya. Saya telah membaca di suatu tempat bahwa itu ada...
Pertanyaan yang relevan : Tentang C ++ 11: C ++ 11: std :: thread pooled? Apakah async (launch :: async) di C ++ 11 membuat kumpulan thread menjadi usang karena menghindari pembuatan thread yang mahal? Tentang Peningkatan: C ++ meningkatkan utas menggunakan kembali utas boost :: utas dan...
Saya bingung dengan deskripsi thread_localdi C ++ 11. Pemahaman saya adalah, setiap utas memiliki salinan unik variabel lokal dalam suatu fungsi. Variabel global / statis dapat diakses oleh semua utas (kemungkinan akses disinkronkan menggunakan kunci). Dan thread_localvariabel terlihat oleh semua...
Apakah std::make_uniqueada manfaat efisiensi seperti std::make_shared? Dibandingkan dengan membangun secara manual std::unique_ptr: std::make_unique<int>(1); // vs std::unique_ptr<int>(new
Saya menemukan beberapa kode menggunakan std :: shared_ptr untuk melakukan pembersihan sembarang saat shutdown. Awalnya saya pikir kode ini tidak mungkin bekerja, tetapi kemudian saya mencoba yang berikut: #include <memory> #include <iostream> #include <vector> class test...
Saya tahu apa itu functor dan kapan menggunakannya dengan stdalgoritme, tetapi saya belum mengerti apa yang dikatakan Stroustrup tentang mereka di FAQ C ++ 11 . Adakah yang bisa menjelaskan apa std::binddan apa std::function, kapan mereka harus digunakan, dan memberikan beberapa contoh untuk...
Fungsi C ++ 11 std::move(x)tidak benar-benar memindahkan apa pun. Itu hanya sebuah pemeran untuk nilai-r. Mengapa ini dilakukan? Bukankah ini
Saya menemukan kode berikut: template <typename T, typename T1> auto compose(T a, T1 b) -> decltype(a + b) { return a+b; } Ada satu hal yang tidak dapat saya mengerti: Di mana saya bisa mengetahui apa yang dimaksud dengan operator panah ( ->) dalam heading fungsi? Saya kira secara...
Saya terkejut ini tidak muncul di hasil pencarian saya, saya pikir seseorang akan menanyakan ini sebelumnya, mengingat kegunaan semantik bergerak di C ++ 11: Kapan saya harus (atau apakah sebaiknya saya) membuat kelas tidak dapat dipindahkan di C ++ 11? (Alasan lain selain masalah kompatibilitas...
Di operator penugasan sebuah kelas, Anda biasanya perlu memeriksa apakah objek yang ditugaskan adalah objek pemanggilan sehingga Anda tidak mengacaukan semuanya: Class& Class::operator=(const Class& rhs) { if (this != &rhs) { // do the assignment } return *this; } Apakah Anda...
auto foo = "You're using g++!"; auto compiler_detector = [foo](auto foo) { std::puts(foo); }; compiler_detector("You're using clang++!"); clang ++ 3.6.0 dan yang lebih baru mencetak "Anda menggunakan clang ++!" dan peringatkan tentang tangkapan foo yang tidak digunakan. g ++ 4.9.0 dan yang lebih...
Saya selalu berpikir bilangan acak akan berada di antara nol dan satu, tanpa1 , yaitu nomor dari interval setengah terbuka [0,1). The dokumentasi pada cppreference.com dari std::generate_canonicalmenegaskan ini. Namun, ketika saya menjalankan program berikut: #include <iostream> #include...
Ketika saya menggunakan [=]untuk menunjukkan bahwa saya ingin semua variabel lokal ditangkap oleh nilai dalam lambda, apakah itu akan menghasilkan semua variabel lokal dalam fungsi yang disalin, atau hanya semua variabel lokal yang digunakan oleh lambda ? Jadi, misalnya, jika saya...
Saya baru-baru ini menemukan deoptimisasi yang aneh (atau lebih tepatnya melewatkan peluang pengoptimalan). Pertimbangkan fungsi ini untuk pembongkaran array yang efisien dari bilangan bulat 3-bit menjadi bilangan bulat 8-bit. Ini membongkar 16 int di setiap iterasi loop: void unpack3bit(uint8_t*...
Saya telah mengerjakan beberapa kode C ++ yang telah ditulis seorang teman dan saya mendapatkan kesalahan berikut yang belum pernah saya lihat sebelumnya ketika mengkompilasi dengan gcc4.6: error: use of deleted function ‘GameFSM_<std::array<C, 2ul> >::hdealt::hdealt()’ is implicitly...
Tertutup . Pertanyaan ini berdasarkan opini . Saat ini tidak menerima jawaban. Ingin memperbaiki pertanyaan ini? Perbarui pertanyaan agar dapat dijawab dengan fakta dan kutipan dengan mengedit posting ini . Tutup 2 tahun lalu . Perbaiki pertanyaan...
Saya telah menggunakan std::tietanpa terlalu memikirkannya. Ini berhasil jadi saya baru saja menerima bahwa: auto test() { int a, b; std::tie(a, b) = std::make_tuple(2, 3); // a is now 2, b is now 3 return a + b; // 5 } Tapi bagaimana ilmu hitam ini bekerja? Bagaimana sementara dibuat oleh...
Saya tahu di C ++ 11 mereka menambahkan fitur untuk menginisialisasi variabel ke nol seperti itu double number = {}; // number = 0 int data{}; // data = 0 Apakah ada cara yang sama untuk menginisialisasi a std::vectordari panjang tetap ke semua