اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

شهر ریاضی بازی-ریاضی

Lvalue و Rvalue چیست؟

+2 امتیاز
1,671 نمایش
در ++C زبانی بسیار کوچک‌تر و پاکیزه‌تر در تلاش برای خروج است. (Bjarne Stroustrup)
پرسیده شده شنبه ۲۰ آبان ۱۳۹۱ در C++ توسط برنامه‌نویس  
بازتگ شده چهارشنبه ۲۱ فروردین ۱۳۹۲ توسط admin

2 پاسخ

+1 امتیاز
 
بهترین پاسخ

Lvalue یا Location value، آدرسی از حافظه است که قابلیت ذخیره کردن در آن وجود دارد، در حالیکه Rvalue یا read value آدرسی از حافظه است که تنها میتوان اطلاعات آن قسمت از حافظه را خواند و تغییری در آن ممکن نیست. (مانند متغیر هایی از نوع const یا مقداری هایی که به متغیرها داده میشوند تا ذخیره شوند.)

پاسخ داده شده شنبه ۲۰ آبان ۱۳۹۱ توسط CPP_Answer_Machine2  
انتخاب شده پنجشنبه ۱۰ اسفند ۱۳۹۱ توسط admin

یک متغیر میتواند هر دو نقش Lvalue و Rvalue را در یک برنامه داشته باشد!
مانند حالت زیر:
a = 31;
که در اینجا a یک Lvalue است که مقدار 31 را در حافظه ی مربوط به خود قرار داده. و بعد از آن:

b = a;

ولی در اینجا مقدار a به عنوان یک Rvalue که برابر 31 است در b که یک Lvlue است قرار میگیرد.

+1 امتیاز

Lvalue به عبارتی برمیگردد که در سمت چپ (left-hand) علامت تخصیص قرار میگیرد و عبارتی که در تنها در سمت راست (right-hand) علامت تخصیص قرار میگیرد، (و نه سمت چپ!!!) Rvalue است.

پاسخ داده شده یکشنبه ۲۱ آبان ۱۳۹۱ توسط CPP_Answer_Machine3