Hanya ada dua kategori tipe dalam bahasa yang tidak bisa memiliki kualifikasi-kualifikasi: tipe referensi, dan tipe fungsi. Jadi, jika const T
gagal menjadi tipe const-kualifikasi, artinya T
adalah tipe fungsi atau tipe referensi. Jika Anda dapat mengesampingkan tipe referensi, maka Anda hanya memiliki tipe fungsi.
Perhatikan bahwa tipe fungsi yang membawa cv-kualifikasi, seperti int(int) const
, bukan tipe const-kualifikasi. Ini adalah contoh dari "tipe fungsi menjijikkan", yang hanya menggunakan nyata untuk membuat atau mendekomposisi tipe fungsi pointer-ke-anggota. Jenis int(int) const
ini tidak dapat diperoleh dengan menambahkan const-kualifikasi di atas int(int)
. Sebaliknya, const
berlaku untuk parameter objek tersirat.
!is_const
bagian itu.