ကြၽန္ေတာ္တို႔ ဒီေန႔ C# language မွာ function ေတြ ဘယ္လိုတည္ေဆာက္မလဲ။ ဘယ္လိုေခၚသံုးမလဲ စတာေတြကို ေလ့လာရေအာင္။ Function ဆိုတာ C# language မွာမွ မဟုတ္ပါဘူး။ ဘယ္programming language မွာမဆို ရွိပါတယ္၊ သံုးၾကပါတယ္။ function သံုးရတယ္ ရည္ရြယ္ခ်က္ေတြေတာ့ အမ်ိဳးမ်ိဳးရွိတာေပါ့ဗ်ာ။ ဥပမာအားျဖင့္ေတာ့ ကြၽန္ေတာ္တို႔ program ရဲ့ ေနရာေတာ္ေတာ္မ်ားမ်ားမွာ သံုးဖို႔လိုအပ္နိုင္တဲ႔ code ေတြကို function ေလးအျဖစ္ခြဲေရးထားမယ္ဆိုရင္ ကိုယ္ေခၚခ်င္တဲ႔ေနရာကေန လြယ္လြယ္ကူကူေခၚသံုးနိုင္မယ္။ မ်ားျပားလွတဲ႔ coding ေတြကို ရႈပ္ပြေနေအာင္မထားခ်င္တဲ႔အခါမ်ိဳးမွာလဲ function ေလးေတြ ခြဲျပီးေရးေလ႔ရွိတာေပါ့။ function ခြဲျပီးေရးကိုေရးရမယ္ဆိုတဲ႔ သက္မွတ္ခ်က္ေတာ့ မရွိပါဘူး။ ကြၽန္ေတာ္program စေရးတုန္းကဆိုရင္ function ခြဲေရးခ်င္ေပမယ့္ ဘယ္နားကို သြားျပီး ခြဲရမလဲဆိုတာ မစဥ္းစားနိုင္လို႔ code ေတြ အားလံုး main function ထဲမွာ ပဲ စုျပံဳျပီးေရးခဲ႔တာပါ။ ေနာက္ပိုင္း ေရးလာရင္းနဲ႔ ဘယ္လိုမ်ိဳးဆိုရင္ function ေလးေတြ ခြဲေရးသင့္တယ္ ဆိုတာ သိလာတာပါပဲ။ အဓိကကေတာ့ program မ်ားမ်ားေရးလာရင္ အလိုလို နားလည္လာပါလိမ့္။
Function
Function တစ္ခုမွာ return type , function name and argument list ဆိုျပီး အပိုင္း ၃ ပိုင္းပါတယ္ဗ်။ ဥပမာ….
int AddTwoNumber( int p1, int p2 ) { return p1 + p2; }
ဒီ function ေလးမွာ int လို႔ေရးလုိက္တာကို return type လို႔ေခၚပါတယ္။ ဒီ function ေလးကို ေခၚမယ္ဆိုရင္ integer value တစ္ခု ျပန္ထြက္လာမယ္လို႔ ေျပာတာပါ။ return value မရွိဘူးဆိုရင္ေတာ့ void လို႔ ေရးေပးရပါတယ္။ မေပးလို႔ေတာ့ မရပါဘူး။ AddTwoNumber ဆိုတာကေတာ့ function name ေပါ့။ function name ေတြ ေပးတဲ႔ေနရာမွာ space ေတြ special char ေတြ ထည့္ေပးလို႔ မရပါဘူး။ ( ) ထဲမွာ ေရးလိုက္တဲ႔ int p1, int p2 ဆိုတာေတြက argument ေတြပါ။ ဒီ function ကိုေခၚသံုးခ်င္ရင္ ထည့္ေပးရမယ့္ parameter ေတြပါခင္ဗ်ာ။ parameter လက္မခံခ်င္တဲ႔ function ေတြေရးရင္ေတာ့ ( ) ထဲမွာ ဘာမွ မထည့္ပဲေရးလို႔ ရပါတယ္။
Function တခုမွာေရးတဲ႔ပံုေပၚမူတည္ျပီး function declaration, function definition နဲ႔ function call ဆိုျပီး ခြဲျခားထားပါေသးတယ္။ အခု အေပၚမွာ ေရးလိုက္တဲ႔ function ကို function definition လို႔ေခၚပါတယ္။ ဘာလို႔လဲဆိုေတာ့ ဒီ function ထဲမွာ ဘာအလုပ္ေတြလုပ္မယ္ဆိုတဲ႔ statement ေတြထည့္ေရးထားလို႔ပါ။ အဲ့ဒီ function ေတြကို Interface ထဲမွာ ထည့္ေရးေတာ့မယ္ဆိုရင္ေတာ့ အခုလိုမ်ိဳး definition ေတြ ထည့္ေရးလုိ႔ မရပါဘူး။ function declaration ပဲေရးခြင့္ရွိပါတယ္။ ဒီလိုမ်ိဳးပါ….
int AddTwoNumber( int p1, int p2 );
ကြၽန္ေတာ္တို႔ေရးထားတဲ႔ function ေတြကို ျပန္ေခၚသံုးမယ္ဆိုရင္ေတာ့ အဲ့ဒါကို function call လို႔ ေခၚပါတယ္။ အေပၚက function ေလးကို ျပန္ေခၚမယ္ဆိုရင္ ဒီလိုေလး ေခၚရမွာပါ…
int res = AddTwoNumber( 3 , 4 );
note: function call ပဲျဖစ္ျဖစ္ definition ပဲျဖစ္ျဖစ္ declaration ပဲျဖစ္ျဖစ္ function လို႔ ေျပာလိုက္တာနဲ႔ ( ) ပါရမယ္ဆိုတာေတာ့ အေသသာမွတ္ထားလိုက္ဗ်ာ။
function parameter Passing အေၾကာင္းကို ေနာက္တပိုစ့္မွာ ေရးေပးမယ္ဗ်ာ။
ဆက္လက္ၿပိးမွ်ေ၀ပါအံုး
Comment by thandar — August 8, 2009 @ 3:30 PM