0 امتیاز
قبل در کامپیوتر و اینترنت توسط (1.1هزار امتیاز)
ویرایش شده قبل توسط

در Eshell وقتی می خواهم به یک متغیر مانند X مقدار بدهم خطای زیر را می دهد:

3> X=3.
** exception error: no match of right hand side value 3

در بعضی از مواقع هم این خطا را نمی دهد (وقتی Eshell را می بندم و باز می کنم).

1 پاسخ

+1 امتیاز
قبل توسط (1.1هزار امتیاز)
 
بهترین پاسخ

در erlang هر متغییر فقط یک بار می تواند مقداردهی شود، عملگر = در بار اول نقش binding را بازی می کند و متغییر شما را به مقدار expression محاسبه شده سمت راست عملگر = bind می کند ولی در دفعات بعدی نقش عملگر pattern matching را بازی می کند و توقع دارد مقدار سمت راست و چپ عملگر = برابر باشد.

در مورد بالا حتما در دستورات قبلی متغییر X به یک مقدار (غیر از عدد 3) bind شده است و حالا وقتی می خواهید یک مقدار جدید به آن بدهید این خطا را می دهد.

سوالات مشابه

0 امتیاز
1 پاسخ 306 بازدید
0 امتیاز
1 پاسخ 952 بازدید
سوال شده 9 سال قبل در کامپیوتر و اینترنت توسط webfo (0 امتیاز)
0 امتیاز
1 پاسخ 410 بازدید
0 امتیاز
1 پاسخ 512 بازدید
0 امتیاز
0 پاسخ 1.1هزار بازدید
0 امتیاز
1 پاسخ 841 بازدید
...