سلام وقت بخیر
در قسمت مربوط به تعریف فانکشن و متغیرهای آن یک جا فرمودید که متغیر می تونه اختیاری باشه که اگر بخوایم نال باشه باید علامت سوال بزاریم. خطایی که میده اینه :
Error: A value of type 'int?' can't be assigned to a variable of type 'num' because 'int?' is nullable and 'num' isn't. int addNumbers(int num1,int num2, [int? num3])=>num1+num2+num3; ^
void main(){ var result = addNumbers(2,2); print(result); } int addNumbers(int num1,int num2, [int? num3])=>num1+num2+num3;
سلام وقت بخیر،
چون هنوز در مورد null safety صحبت نکردم، راه حل این مسئله رو تو ویدیو نمی تونستم بگم، ولی حالا که پرسیدی اینجا کد صحیح رو می نویسم. باید از operator دوتا علامت سوال (؟؟) استفاده کنی، معنی استفاده ازش اینه: اگه num3 برابر با null بود، مقدار صفر رو جایگزین این expression کن
void main(){
var result = addNumbers(2,2);
print(result);
}
int addNumbers(int num1,int num2, [int? num3])=>num1+num2+(num3??0);