Pertanyaan yang diberi tag c++

9
foo (batal) vs foo (batal *)

Secara fungsional dan sintaksis, apakah ada perbedaan antara fungsi yang prototipe-nya int foo(void)dan int foo(void *)? Saya tahu perbedaan antara, misalnya, int bar(int)dan int bar(int *)- salah satunya mencari int, dan yang lainnya mencari pointer int. Apakah voidberperilaku dengan cara yang...

9
Dari bahasa alami hingga ekspresi C ++

Tugas: Terjemahkan ekspresi bahasa alami berikut ke ekspresi C ++. Asumsikan bahwa semua variabel adalah angka non-negatif atau boolean (bernilai benar atau salah). Bahasa alami: Baik a dan b keduanya salah atau c benar, tetapi tidak keduanya. Solusi saya: (a==0 &&...

9
Bagaimana mencegah modifikasi untuk menyusun data?

Katakanlah saya memiliki kelas yang terlihat seperti ini (ini hanya sebuah contoh): class A { double *ptr; public: A() : ptr( new double[100] ) {} A( const A &other ) { other.ptr[7] = 15; } void doNotChangeMyData() const { ptr[43] = 14; } void changeMyData() { ptr[43] = 14; } ~A()...

9
Mencoba memahami templat dan pencarian nama

Saya mencoba memahami cuplikan kode berikut Cuplikan # 1 template <typename T> struct A { static constexpr int VB = T::VD; }; struct B : A<B> { }; Baik gcc9 atau dentang melemparkan kesalahan di sini. Q. Mengapa kode ini dikompilasi? Bukankah kita instantiasi A<B>ketika...

9
Apakah diizinkan menambahkan nol ke pointer nol?

Saya tahu bahwa pointer aritmatika tidak diizinkan untuk null pointer. Tetapi bayangkan saya memiliki sesuatu seperti ini: class MyArray { int *arrayBegin; // pointer to the first array item, NULL for an empty array unsigned arraySize; // size of the array, zero for an empty array public: int...

9
Apakah baru (ini) ThisClass () ide yang buruk?

class FooView final : public Something { ... void refresh() { this->~FooView(); new (this) FooView(); } } Saya belum pernah melihat idiom ini, dan sepertinya itu bisa sangat halus dan berantakan, tetapi saya tidak dapat benar-benar memikirkan masalah dengan itu (selama FooViewfinal)....