2016-05-30 14 views

cevap

6

const nesnesinin tüm amacı, değiştirilememesidir. Bir const sınıf üyesi, bu durumda, dizede bir karaktere değiştirilebilir bir başvuru döndürür, bunu değiştirebilirsiniz.

Şimdi, operator[] devam ettiği sürece, bir işaretçi edinmek için & işlecini kullanabilirsiniz. Sonuçta, böyle bir şey oldukça yaygındır: Bir düz rvalue dönüş türü ile yapmak mümkün olmaz

auto *foo=&bar[baz]; 

. En azından bu durumda const işaretçisini alabilirsiniz.

+2

OP, const char & 'vs' char' ('char' 'değil) (yani, const aşırı yüklenme için neden' ​​char' değil) hakkında soru sordu, değil mi? –

+0

@JamesAdkison “const” üye bildirimini kaçırdınız mı? –

+0

Evet, neredeyse bu bölümü özledim ve cevabımı güncelledim. –

İlgili konular