Pertanyaan yang diberi tag const

105
Bagaimana menginisialisasi variabel anggota const di kelas?

#include <iostream> using namespace std; class T1 { const int t = 100; public: T1() { cout << "T1 constructor: " << t << endl; } }; Ketika saya mencoba untuk menginisialisasi variabel anggota const tdengan 100. Tapi itu memberi saya kesalahan berikut: test.cpp:21:...

104
Mengapa argc bukan konstanta?

int main( const int argc , const char[] const argv) Karena C ++ Item # 3 yang efektif menyatakan "Gunakan const bila memungkinkan", saya mulai berpikir "mengapa tidak membuat parameter 'konstan' ini const"?. Apakah ada skenario di mana nilai dari argcdiubah dalam sebuah

102
C ++ 0x lambda capture berdasarkan nilai selalu const?

Apakah ada cara untuk menangkap berdasarkan nilai, dan membuat nilai yang ditangkap menjadi non-konstan? Saya memiliki functor perpustakaan yang saya ingin menangkap & memanggil metode yang non-const tetapi harus. Berikut ini tidak dapat dikompilasi tetapi membuat foo :: operator () const...

100
Akses elemen peta C ++

Saya mencoba menggunakan operator [] mengakses elemen dalam peta const C ++, tetapi metode ini gagal. Saya juga mencoba menggunakan "at ()" untuk melakukan hal yang sama. Kali ini berhasil. Namun, saya tidak dapat menemukan referensi tentang penggunaan "at ()" untuk mengakses elemen di peta C ++...

13
Bagaimana expr dievaluasi begitu cepat

Saya telah mencoba ekspresi const yang dievaluasi pada waktu kompilasi. Tapi saya bermain dengan contoh yang tampak sangat cepat ketika dieksekusi pada waktu kompilasi. #include<iostream> constexpr long int fib(int n) { return (n <= 1)? n : fib(n-1) + fib(n-2); } int main () {...

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()...