همانطور که میدونید از const برای متغیر ها با فضای نام ثابت گلوبال استفاده میشه.یک نکته اینجا هست که از const نمیشه در scope ها استفاده کرد و اون رو در scope ها تعریف کرد به خاطره این ماهیت گلوبال بودن آن. البته از const در scope class ها میشه استفاده کرد.اگه میخواید در scope ها از متغیر با فضای نام ثابت استفاده کنید باید از ()define ها استفاده کنید.
در تکمیل صحبت های دوست عزیزمون میتونم بگم که const همیشه case-sensitive است و const در حین compile-time ساخته میشه که سریع تر است اما define در زمان run-time ساخته میشه.
چون const در زمان compile ساخته میشه پس توی شرط ها و بدنه ی اون ها نمیتوانیم استفاده کنیم
compile قبل از run time رخ میده