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.






14
Cara menulis basis log (2) di c / c ++
Apakah ada cara untuk menulis fungsi log (basis 2)? Bahasa C memiliki 2 fungsi bawaan - >> 1. logyang merupakan basis e. 2. log10basis 10; Tapi saya membutuhkan fungsi log basis 2. Bagaimana menghitung ini.
99 c++  c 

4
Bagaimana std :: function diimplementasikan?
Menurut sumber yang saya temukan, ekspresi lambda pada dasarnya diimplementasikan oleh kompilator yang membuat kelas dengan operator panggilan fungsi yang kelebihan beban dan variabel yang direferensikan sebagai anggota. Hal ini menunjukkan bahwa ukuran ekspresi lambda bervariasi, dan diberikan variabel referensi yang cukup sehingga ukurannya dapat menjadi besar secara sewenang-wenang . …
99 c++  c++11  lambda 

6
Apakah Pengecualian di C ++ sangat lambat
Saya menonton Systematic Error Handling di C ++ - Andrei Alexandrescu dia mengklaim bahwa Pengecualian di C ++ sangat lambat. Apakah ini masih berlaku untuk C ++ 98?
99 c++ 

3
Bagaimana cara memeriksa dengan benar apakah std :: function kosong di C ++ 11?
Saya bertanya-tanya bagaimana cara memeriksa dengan benar apakah std::functionkosong. Pertimbangkan contoh ini: class Test { std::function<void(int a)> eventFunc; void registerEvent(std::function<void(int a)> e) { eventFunc = e; } void doSomething() { ... eventFunc(42); } }; Kode ini dikompilasi dengan baik di MSVC tetapi jika saya memanggil doSomething()tanpa menginisialisasi eventFunckode tersebut jelas …

10
Konversi QString ke char *
Saya mencoba mengonversi QString ke tipe char * dengan metode berikut, tetapi tampaknya tidak berhasil. //QLineEdit *line=new QLineEdit();{just to describe what is line here} QString temp=line->text(); char *str=(char *)malloc(10); QByteArray ba=temp.toLatin1(); strcpy(str,ba.data()); Dapatkah Anda menjelaskan kekurangan yang mungkin terjadi dengan metode ini, atau memberikan metode alternatif?
99 c++  qt  qstring  qtcore 


16
Cara bersih untuk menulis beberapa loop 'untuk'
Untuk array dengan banyak dimensi, biasanya kita perlu menulis forloop untuk setiap dimensinya. Sebagai contoh: vector< vector< vector<int> > > A; for (int k=0; k<A.size(); k++) { for (int i=0; i<A[k].size(); i++) { for (int j=0; j<A[k][i].size(); j++) { do_something_on_A(A[k][i][j]); } } } double B[10][8][5]; for (int k=0; k<10; k++) …
98 c++  for-loop 

4
Apa jawaban yang benar untuk cout << a ++ << a ;?
Baru-baru ini dalam sebuah wawancara ada pertanyaan tipe objektif berikut. int a = 0; cout &lt;&lt; a++ &lt;&lt; a; Jawaban: Sebuah. 10 b. 01 c. perilaku tidak terdefinisi Saya menjawab pilihan b, yaitu output akan menjadi "01". Tapi yang mengejutkan saya kemudian saya diberitahu oleh pewawancara bahwa jawaban yang benar …
98 c++  c++-faq 

14
Haruskah saya mewarisi dari std :: exception?
Saya telah melihat setidaknya satu sumber yang dapat diandalkan (kelas C ++ yang saya ambil) merekomendasikan bahwa kelas pengecualian khusus aplikasi di C ++ harus mewarisi std::exception. Saya tidak mengerti manfaat dari pendekatan ini. Di C # alasan untuk mewarisi dari ApplicationExceptionsudah jelas: Anda mendapatkan beberapa metode, properti, dan konstruktor …

4
Mengapa kita menyalin lalu pindah?
Saya melihat kode di suatu tempat di mana seseorang memutuskan untuk menyalin objek dan kemudian memindahkannya ke anggota data kelas. Ini membuat saya bingung karena saya pikir inti dari pindah adalah untuk menghindari penyalinan. Berikut contohnya: struct S { S(std::string str) : data(std::move(str)) {} }; Inilah pertanyaan saya: Mengapa kita …

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.