Pertanyaan yang diberi tag «c++11»

Gunakan tag ini untuk kode yang harus dikompilasi sebagai C ++ 11 (tidak menggunakan fitur apa pun yang diperkenalkan di C ++ 14 atau yang lebih baru).

8
C ++ 11 emplace_back pada vektor <struct>?
Pertimbangkan program berikut: #include &lt;string&gt; #include &lt;vector&gt; using namespace std; struct T { int a; double b; string c; }; vector&lt;T&gt; V; int main() { V.emplace_back(42, 3.14, "foo"); } Tidak berhasil: $ g++ -std=gnu++11 ./test.cpp In file included from /usr/include/c++/4.7/x86_64-linux-gnu/bits/c++allocator.h:34:0, from /usr/include/c++/4.7/bits/allocator.h:48, from /usr/include/c++/4.7/string:43, from ./test.cpp:1: /usr/include/c++/4.7/ext/new_allocator.h: In instantiation of …
89 c++  c++11 

11
Pretty-print std :: tuple
Ini adalah tindak lanjut dari pertanyaan saya sebelumnya tentang wadah STL dengan pencetakan cantik , yang untuknya kami berhasil mengembangkan solusi yang sangat elegan dan sepenuhnya umum. Pada langkah selanjutnya, saya ingin memasukkan pencetakan cantik untuk std::tuple&lt;Args...&gt;, menggunakan templat variadic (jadi ini benar-benar C ++ 11). Karena std::pair&lt;S,T&gt;, saya hanya …

5
Apa sajakah opsi tautan yang benar untuk menggunakan std :: thread di GCC pada linux?
Hai, saya mencoba menggunakan std::threaddengan G ++. Ini kode tes saya #include &lt;thread&gt; #include &lt;iostream&gt; int main(int, char **){ std::thread tt([](){ std::cout&lt;&lt;"Thread!"&lt;&lt;std::endl; }); tt.join(); } Ini dikompilasi, tetapi ketika saya mencoba menjalankannya, hasilnya adalah: terminate called after throwing an instance of 'std::system_error' what(): Operation not permitted Aborted Versi kompiler saya: …


2
Efisiensi C ++ 11 push_back () dengan std :: move versus emplace_back () untuk objek yang sudah dibangun
Dalam C ++ 11 emplace_back()umumnya lebih disukai (dalam hal efisiensi) push_back()daripada karena memungkinkan konstruksi di tempat, tetapi apakah ini masih terjadi saat menggunakan push_back(std::move())dengan objek yang sudah dibangun? Misalnya, apakah emplace_back()masih disukai dalam kasus seperti berikut ini? std::string mystring("hello world"); std::vector&lt;std::string&gt; myvector; myvector.emplace_back(mystring); myvector.push_back(std::move(mystring)); // (of course assuming we don't …

5
Memahami std :: atomic :: bandingkan_exchange_weak () di C ++ 11
bool compare_exchange_weak (T&amp; expected, T val, ..); compare_exchange_weak()adalah salah satu primitif pertukaran-perbandingan yang disediakan dalam C ++ 11. Ini lemah dalam arti mengembalikan salah meskipun nilai objek sama dengan expected. Ini karena kegagalan palsu pada beberapa platform di mana urutan instruksi (bukan satu seperti pada x86) digunakan untuk mengimplementasikannya. Pada …

4
Apakah fitur eksperimental C ++ modern dapat diandalkan untuk proyek jangka panjang?
Saya memiliki proyek yang saat ini menggunakan C ++ 11/14, tetapi membutuhkan sesuatu seperti std::filesystem, yang hanya tersedia di C ++ 17, dan karenanya saya tidak memiliki kesempatan untuk menggunakannya saat ini. Saya melihat, bagaimanapun, bahwa itu tersedia di kompiler saya saat ini sebagai std::experimental::filesystem. Apakah ide yang baik untuk …






4
Bisakah saya menggunakan C ++ 11 dengan Xcode?
Saya sedang mempertimbangkan penggunaan beberapa fitur C ++ 11 (seperti automisalnya) di beberapa proyek lintas platform (Windows + Mac). Di Windows, Visual Studio mendukung bagian dari standar C ++ 11 yang akan datang yang memungkinkan saya untuk menyederhanakan bagian dari basis kode sehingga secara alami saya akan tertarik untuk mulai …
86 c++  xcode  gcc  c++11  clang 

10
Menggunakan std :: vector sebagai view on ke memori mentah
Saya menggunakan perpustakaan eksternal yang pada beberapa titik memberi saya pointer mentah ke array bilangan bulat dan ukuran. Sekarang saya ingin menggunakan std::vectoruntuk mengakses dan memodifikasi nilai-nilai ini di tempat, daripada mengaksesnya dengan pointer mentah. Berikut adalah contoh artikifial yang menjelaskan intinya: size_t size = 0; int * data = …
71 c++  c++11  vector  stdvector 


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.