در زبان سیپلاسپلاس، همیشه باید const در زمان تعریف/اعلان، جلوی نوع شما قرار بگیره. منتهیٰ این اجازه هم داده شده که مثل الباقی زبانهای C-Like شما const رو پشت نوع هم قرار بدید. که اینکار واقعاً توی نوعهای پیچیده میتونه خوانایی کد رو خراب بکنه. مثلاً به این تعریف توجه کنید:
در نگاه اوّل کمی زمانبر هست که بگیم str_ptr یک اشارهگر ثابت به نوع std::string هست و یا یک اشارهگر به یک نوع ثابت std::string هست؟ یا حتیٰ بدتر، این تعریف رو ببینید:
امّا اگه const رو در جلوی نوع خودمون بنویسیم، خیلی راحتتر میتونیم این تعریف رو متوجه بشیم:
حالا کافی هست که این تعریف رو از سمت راست به چپ بخونیم: «متغیر str_ptr یک اشارهگر ثابت به نوع ثابت std::string هست.
https://isocpp.org/wiki/faq/const-correctness