yöntem bildirimleri ile C++ bir başlık dosyası kodlama arasındaki fark nedir:başında ve C Metod başlığındaki ++ sonuna const zaman kullanılmalı
int getFoo() const;
const int getFoo();
const int getFoo() const;
yöntem bildirimleri ile C++ bir başlık dosyası kodlama arasındaki fark nedir:başında ve C Metod başlığındaki ++ sonuna const zaman kullanılmalı
int getFoo() const;
const int getFoo();
const int getFoo() const;
karışımıdır; const nesne (değiştiremeyeceği ya da en azından olmamalıdır)).
İkinci işleviniz sabit bir tamsayı döndürür - ki bu bir non-constlidir, çünkü onu const olmayan bir değişkene atayabilir ve yine de değiştirebilirsiniz. Ayrıca, bir POD türünü değiştirirseniz, işlev neden önemlidir?
Üçüncü işleviniz yalnızca ilk ikisinin birleşimidir. Const değeri döndüren const nesnesinde çalışan bir işlev.
İlk birinin, bunu önlemeye yönelik olduğunu Nesnenin herhangi bir üye değişkenini değiştiren yöntem. İkincisi, dönüş türü içindir (yani: sabit tamsayı) Üçüncü bir, İlk fonksiyon const
this
pointer (yani çalışır hem
İkinci 'const T f()' veya 'const T f() const' işlevi kullanılamaz. –