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.


5
Apakah anggota kelas referensi const memperpanjang umur sementara?
Mengapa demikian: #include <string> #include <iostream> using namespace std; class Sandbox { public: Sandbox(const string& n) : member(n) {} const string& member; }; int main() { Sandbox sandbox(string("four")); cout << "The answer is: " << sandbox.member << endl; return 0; } Berikan hasil: Jawabannya adalah: Dari pada: Jawabannya adalah: empat

13
Di C ++, apakah saya membayar untuk makanan yang tidak saya makan?
Mari kita perhatikan contoh halo dunia berikut dalam C dan C ++: main.c #include <stdio.h> int main() { printf("Hello world\n"); return 0; } main.cpp #include <iostream> int main() { std::cout<<"Hello world"<<std::endl; return 0; } Ketika saya mengkompilasi mereka di godbolt ke assembly, ukuran kode C hanya 9 baris ( gcc …
170 c++  c 






8
Memisahkan kode kelas menjadi file header dan cpp
Saya bingung bagaimana memisahkan implementasi dan deklarasi kode dari kelas sederhana menjadi file header dan cpp baru. Sebagai contoh, bagaimana saya memisahkan kode untuk kelas berikut? class A2DD { private: int gx; int gy; public: A2DD(int x,int y) { gx = x; gy = y; } int getSum() { return …
170 c++  oop  class 





2
fungsi anggota publik teman swap
Dalam jawaban yang indah untuk idiom copy-and-swap ada sepotong kode saya butuh bantuan: class dumb_array { public: // ... friend void swap(dumb_array& first, dumb_array& second) // nothrow { using std::swap; swap(first.mSize, second.mSize); swap(first.mArray, second.mArray); } // ... }; dan dia menambahkan catatan Ada klaim lain bahwa kita harus mengkhususkan std …

3
Bagaimana “= default” berbeda dari “{}” untuk konstruktor dan destruktor default?
Saya awalnya memposting ini sebagai pertanyaan hanya tentang destruktor, tapi sekarang saya menambahkan pertimbangan konstruktor default. Inilah pertanyaan aslinya: Jika saya ingin memberi kelas saya destruktor yang virtual, tetapi sebaliknya sama dengan apa yang akan dihasilkan oleh kompiler, saya dapat menggunakan =default: class Widget { public: virtual ~Widget() = default; …

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.