chikar
پنج شنبه 21 اسفند 1393, 19:15 عصر
سلام
چرا وقتی از const در روش فراخوانی با ارجاع استفاده شود می توان مقدار را بدون تعریف متغیر مستقیما به پارامتر تابع ارسال نمود ولی در صورت عدم استفاده از const باید ابتدا یک متغیر ایجاد نمود و سپس آن متغیر را به صورت ارجاع به پارامتر تابع ارسال کرد
( به نظرم غیرقابل تغییر کردن مقدار ارسالی توسط const در تابع باعث این امر شده)
void MyFunck(int &a,const int &b) {};
void main()
{
int x=4;
MyFunck(x,7);
}
::چرا 4 را مستقیما و بدون تعریف x نمی توان ارسال نمود ولی 7 را مستقیما ارسال می کنیم::
چرا وقتی از const در روش فراخوانی با ارجاع استفاده شود می توان مقدار را بدون تعریف متغیر مستقیما به پارامتر تابع ارسال نمود ولی در صورت عدم استفاده از const باید ابتدا یک متغیر ایجاد نمود و سپس آن متغیر را به صورت ارجاع به پارامتر تابع ارسال کرد
( به نظرم غیرقابل تغییر کردن مقدار ارسالی توسط const در تابع باعث این امر شده)
void MyFunck(int &a,const int &b) {};
void main()
{
int x=4;
MyFunck(x,7);
}
::چرا 4 را مستقیما و بدون تعریف x نمی توان ارسال نمود ولی 7 را مستقیما ارسال می کنیم::