PDA

View Full Version : اشکال در const



parnia_mb
شنبه 15 فروردین 1388, 09:54 صبح
با سلام
من یه سوال در مورد c++ داشتم که البته شاید ابتدایی باشه
ولی نمیدونم برا چیه. ممنون میشم اگه کسی کمکم کنه .
تو این خط برنامه نمیدونم این const برا چی اینجا نوشته شده و کارش چی هست:

int person :: pack ( DelinTextBuffer & Buffer) const

cups_of_java
شنبه 15 فروردین 1388, 10:09 صبح
وقتی const بعد اسم یک تابع می آد هدفش تعریف یک تابع ثابت هستش! این تیپ توابع برای دسترسی به متغیر های ثابت و یا اشیای ثابت یه کار می رن و نمی تونن به متغیر ها و اشیای غیر ثابت دسترسی داشته باشند.

sianooshonline
شنبه 15 فروردین 1388, 17:33 عصر
باید اضافه کنم این نوع prototype به کامپایلر میگه که در بدنه این تابع متغیری تغییر نخواهد کرد و این تابع مجاز به تغییر مقدار هیچ متغیری نیست.
البته اگر متغیری دارید که ممکنه در این نوع توابع تغییر کند باید اون رو mutable تعریف کنید.