Pertanyaan yang diberi tag «c++»

C ++ adalah bahasa pemrograman untuk tujuan umum. Awalnya dirancang sebagai ekstensi ke C dan memiliki sintaksis yang sama, tetapi sekarang bahasa yang sama sekali berbeda. Gunakan tag ini untuk pertanyaan tentang kode yang akan dikompilasi dengan kompiler C ++. Gunakan tag khusus versi untuk pertanyaan yang berkaitan dengan revisi standar spesifik [C ++ 11], [C ++ 14], [C ++ 17] atau [C ++ 20], dll.


2
Apa itu COM (Component Object Model) secara singkat? [Tutup]
Tertutup . Pertanyaan ini perlu lebih difokuskan . Saat ini tidak menerima jawaban. Ingin memperbaiki pertanyaan ini? Perbarui pertanyaan sehingga hanya berfokus pada satu masalah dengan mengedit posting ini . Tutup 7 tahun yang lalu . Perbaiki pertanyaan ini Tampaknya objek COM adalah objek penggunaan umum yang diatur oleh OS. …
89 c++  com 

8
Dapatkah cabang dengan perilaku tidak terdefinisi diasumsikan tidak dapat dijangkau dan dioptimalkan sebagai kode mati?
Perhatikan pernyataan berikut: *((char*)NULL) = 0; //undefined behavior Ini jelas memunculkan perilaku yang tidak terdefinisi. Apakah adanya pernyataan seperti itu dalam program tertentu berarti bahwa keseluruhan program tidak terdefinisi atau bahwa perilaku hanya menjadi tidak terdefinisi begitu aliran kendali mencapai pernyataan ini? Apakah program berikut akan terdefinisi dengan baik jika …

10
kesalahan fatal LNK1104: tidak dapat membuka file 'libboost_system-vc110-mt-gd-1_51.lib'
Sepertinya saya tidak bisa mendapatkan ini untuk bekerja. Saya membuat aplikasi konsol sederhana (yang bergantung pada websocket++perpustakaan) yang membutuhkan Boostperpustakaan .. tetapi ketika saya mencoba untuk mengkompilasi saya mendapatkan: kesalahan fatal LNK1104: tidak dapat membuka file 'libboost_system-vc110-mt-gd-1_51.lib' Namun, saya melakukan bjam yang membuat lib in (boost_root)/stage/libsdan saya menghubungkan path ke …
89 c++  boost 


3
Default, nilai dan nol inisialisasi berantakan
Saya sangat bingung tentang nilai- & default- & nol-inisialisasi. dan terutama ketika mereka menendang untuk standar yang berbeda C ++ 03 dan C ++ 11 (dan C ++ 14 ). Saya mengutip dan mencoba untuk memperluas jawaban yang sangat bagus Value- / Default- / Zero- Init C ++ 98 dan …
89 c++  c++11  c++14  c++03  c++98 

5
Meneruskan petunjuk bersama sebagai argumen
Jika saya mendeklarasikan objek yang dibungkus dengan pointer bersama: std::shared_ptr<myClass> myClassObject(new myClass()); maka saya ingin menyampaikannya sebagai argumen untuk suatu metode: DoSomething(myClassObject); //the called method void DoSomething(std::shared_ptr<myClass> arg1) { arg1->someField = 4; } Apakah hal di atas hanya menambah jumlah referensi shared_pt dan semuanya keren? Atau apakah itu meninggalkan penunjuk …

7
Mengapa kita tidak bisa mendeklarasikan std :: vector <AbstractClass>?
Setelah menghabiskan cukup banyak waktu untuk mengembangkan C #, saya perhatikan bahwa jika Anda mendeklarasikan kelas abstrak untuk tujuan menggunakannya sebagai antarmuka, Anda tidak dapat membuat contoh vektor kelas abstrak ini untuk menyimpan instance kelas anak. #pragma once #include &lt;iostream&gt; #include &lt;vector&gt; using namespace std; class IFunnyInterface { public: virtual …




4
Mengapa template fungsi tidak dapat dikhususkan sebagian?
Saya tahu spesifikasi bahasa melarang spesialisasi parsial dari template fungsi. Saya ingin tahu alasan mengapa melarangnya? Apakah mereka tidak berguna? template&lt;typename T, typename U&gt; void f() {} //allowed! template&lt;&gt; void f&lt;int, char&gt;() {} //allowed! template&lt;typename T&gt; void f&lt;char, T&gt;() {} //not allowed! template&lt;typename T&gt; void f&lt;T, int&gt;() {} //not allowed!

3
bagaimana cara menyediakan fungsi swap untuk kelas saya?
Apa cara yang tepat untuk mengaktifkan swapalgoritma STL saya ? 1) Anggota swap. Apakah std::swapmenggunakan trik SFINAE untuk menggunakan anggota swap. 2) Berdiri bebas swapdi namespace yang sama. 3) Spesialisasi parsial std::swap. 4) Semua hal di atas. Terima kasih. EDIT: Sepertinya saya tidak mengucapkan pertanyaan saya dengan jelas. Pada dasarnya, …
89 c++  algorithm  stl  swap 


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 

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.