Pertanyaan yang diberi tag «c++11»

C ++ 11 adalah nama standar C ++, disetujui pada 2011. Ini menggantikan standar C ++ 03 sebelumnya, menambahkan berbagai perubahan dan perbaikan bahasa inti, dan pustaka standar yang ditingkatkan dan diperluas.

2
Apakah pernah buruk untuk menandai fungsi constexpr C ++?
Diberi fungsi yang sangat sepele, int transform(int val) { return (val + 7) / 8; } Seharusnya sangat jelas bahwa mudah untuk mengubah fungsi ini menjadi constexprfungsi, memungkinkan saya untuk menggunakannya ketika mendefinisikan constexprvariabel, seperti: constexpr int transform(int val) { return (val + 7) / 8; } Asumsi saya adalah …
26 c++  c++11 

1
Motivasi dan jebakan (?) Dari kata kunci otomatis di C ++ 11
Saya baru-baru ini bertanya-tanya mengapa kata kunci autodipilih dalam C ++ 11 untuk menandai variabel yang jenisnya harus disimpulkan oleh kompiler, seperti di auto x = 1; Sejak var tampaknya lebih umum di bahasa pemrograman lain (misalnya C #, Scala, JavaScript), dan Sejauh yang saya mengerti semantik baru dari autokompatibilitas …

6
Haruskah saya menggunakan fitur 'otomatis' C ++ 11 yang baru, terutama dalam loop?
Apa pro / kontra untuk menggunakan autokata kunci, terutama untuk loop? for(std::vector<T>::iterator it = x.begin(); it != x.end(); it++ ) { it->something(); } for(std::map<T>::iterator it = x.begin(); it != x.end(); it++ ) { it->second->something(); } for(auto it = x.begin(); it != x.end(); it++ ) { it->?? } Sepertinya jika Anda …
20 c++  c++11 




2
Siapa yang harus disalahkan untuk rentang ini berdasarkan untuk referensi sementara?
Kode berikut terlihat agak tidak berbahaya pada pandangan pertama. Seorang pengguna menggunakan fungsi bar()untuk berinteraksi dengan beberapa fungsi perpustakaan. (Ini mungkin telah bekerja untuk waktu yang lama sejak bar()mengembalikan referensi ke nilai non-temporer atau serupa.) Namun sekarang hanya mengembalikan contoh baru B. Blagi memiliki fungsi a()yang mengembalikan referensi ke objek …
15 c++11 


1
mungkin untuk mencapai model kepemilikan Rust dengan bungkus C ++ generik?
Melihat melalui artikel ini tentang keamanan konkurensi Rust: http://blog.rust-lang.org/2015/04/10/Fearless-Concurrency.html Saya bertanya-tanya berapa banyak dari ide-ide ini dapat dicapai di C ++ 11 (atau lebih baru). Secara khusus dapatkah saya membuat kelas pemilik yang mentransfer kepemilikan ke metode apa pun yang dapat dilewati? Tampaknya C ++ memiliki begitu banyak cara untuk …

2
Apakah ini pola yang baik: mengganti fungsi panjang dengan serangkaian lambda?
Saya baru-baru ini mengalami situasi berikut. class A{ public: void calculate(T inputs); } Pertama, Amerepresentasikan objek di dunia fisik, yang merupakan argumen kuat untuk tidak memisahkan kelas. Sekarang, calculate()ternyata fungsinya cukup panjang dan rumit. Saya merasakan tiga kemungkinan struktur untuk itu: tulis itu sebagai dinding teks - keuntungan - semua …
14 c++11  lambda 

1
Invarian seumur hidup objek vs semantik bergerak
Ketika saya mempelajari C ++ sejak lama, sangat ditekankan kepada saya bahwa bagian dari titik C ++ adalah seperti halnya loop memiliki "loop-invariants", kelas juga memiliki invarian yang terkait dengan masa hidup objek - hal-hal yang seharusnya benar selama benda itu hidup. Hal-hal yang harus ditetapkan oleh konstruktor, dan dilestarikan …

1
Dukungan C ++ 11 untuk fungsi daftar tingkat tinggi
Kebanyakan bahasa pemrograman fungsional (misalnya Common Lisp, Scheme / Racket, Clojure, Haskell, Scala, Ocaml, SML) mendukung beberapa fungsi umum tingkat tinggi pada daftar, seperti map, filter, takeWhile, dropWhile, foldl, foldr(lihat misalnya Common Lisp, Scheme / Racket, Clojure lembar referensi berdampingan , Haskell , Scala , OCaml , dan dokumentasi SML …

2
Bagaimana menangani perubahan desain untuk penghentian auto_ptr di C ++ 11?
Kami sedang menguji perpustakaan di bawah C ++ 11 (yaitu, -std=c++11). Perpustakaan menggunakan auto_ptrdan pola ini: Foo* GetFoo() { autoptr<Foo> ptr(new Foo); // Initialize Foo ptr->Initialize(...); // Now configure remaining attributes ptr->SomeSetting(...); return ptr.release(); } C ++ 11 sudah usang auto_ptr, jadi kami ingin menjauh darinya. Namun, kode ini mendukung …
12 design  c++  c++11 

3
Mencapai kompatibilitas kedepan dengan C ++ 11
Saya bekerja pada aplikasi perangkat lunak besar yang harus dijalankan pada beberapa platform. Beberapa platform ini mendukung beberapa fitur C ++ 11 (mis. MSVS 2010) dan beberapa tidak mendukung apa pun (mis. GCC 4.3.x). Saya berharap situasi ini akan berlanjut selama beberapa tahun (tebakan terbaik saya: 3-5 tahun). Mengingat itu, …
12 c++  c++11 


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.