سلام دوستان
دوستان تفاوت تابع و متد در چی هست؟
ممنون از راهنمایی شما
سلام دوستان
دوستان تفاوت تابع و متد در چی هست؟
ممنون از راهنمایی شما
سلام
دوست عزیز یکی از استادان حرفه ای برنامه نویسی گفتن که تفاوت دارن اما تفاوتش رو نگفتن
ممنون از شما
سلام
من فکر میکنم هر دو یکی هستن در سی شارپ ، ولی خب مثلا در vb.net ، متد دو شکل داره که میشه تابع و سابروتین (Function - Sub) که تفاوت این دو اینه که تابع مقدار برمیگردونه و ساب روتین مقدار برنمیگردونه ، بنابراین تو vb هم مقایسه بین متد و تابع نداریم چرا که تابع خودش یک شکل از متد هست.
احتمالا منظور شما همین تعریفی هست که تو vb.net از تابع میشه.
قوانین سایت برنامه نویس [ به سوالات از طریق پیام خصوصی پاسخ داده نمی شود ]
دوستان متد برای زبان های شی گرا مثل جاوا به کار میره و تابع برای زبان های ساختاری مثل cبه کار میره.
اما من در یه قسمت گیج شدم .یکی از اساتید خبره برنامه نویسی گفتن که در سی شارپ متد و تابع با هم فرق دارن.
حالا سوال اینجاست که مگه سی شارپ یک زبان شی گرا نیست؟ پس چرا تابع و متد با هم در این زبان تفاوت دارن؟
لطفا راهنمایی بفرمایید
سپاس
سلام
تابع و متد در سی شارپ یک معنا دارند هردوشون عملی رو انجام داده و مقداری برمیگردونن
public int GetMyFunc
return 10;
ولی از نوع void که مقدار بر نمیگردونه هم در سی شارپ هست که باز بهش میگن تابع
public void MyProc
}
فراخوانی سایر متدها و مقدار دهی متغیر.....
{
شاید منظور استاد خبره شما این بوده
سلام
هر دو یکی هستن ، فقط :
در برنامه نویسی شی گرا ، یک روش زیر روال (یا پردازه یا تابع) در ارتباط با یک کلاس است.
با توجه به برنامه نویسی شی گرا از "روش - متد" استفاده می شود ، نه توابع .
مثال :
public int myFunc( int x )
{
مجموعه دستورات//
}
()publicvoidDoSomething
method
()publicintDoSomethingAndReturnMeANumber
function
دقیقا همون چیزی که آقا آشتیانی گفتن صدق میکنه : تابع مقدار برگشتی داره ولی متد فقط یه سری از دستورات هستش !
و اینکه برای توابع حتما میبایست نوع مقدار برگشتی تعیین بشه !
منبع : http://stackoverflow.com/questions/1...d-and-function
تو برنامه نویسی شی گرا متد یا پروسیجر(procedure) یا تابع یک زیرروال در یک کلاس هست... و همونطوری که سی شارپ متد رو از جاوا و سی پلاس پلاس گرفته تابع یا متد یا پروسیجر تفاوتی با هم ندارند ...ولی اگر تفاوت کلی متد و تابع رو میخوای بدونی این جدول یه سری تفاوتهای اصطلاح متد و تابع رو نشون میده...
S.No Functions Methods 1 Functions do not have any reference variables Methods are called by reference variables 2 All data that is passed to a function is explicitly passed It is implicitly passed the object for which it was called 3 It does not have access controlling i.e.,Function(other than static functions) declares and defines anywhere in the code It has access controlling i.e.,Method should declare and define in the class only
4 Function applies to both object oriented and non-object oriented language(procedural language.eg. C, Scripting language eg; JavaScript etc) Method is only applicable to object oriented programming language like C++, C#, Java etc
سلام.
در اصل متود مقدار برگشتی نداره ولی تابع داره.
اما در اصطلاح رایج عامیانه :تعجب: به اعضای کلاسها، با مقدار برگشتی و یا بدون مقدار برگشتی متود گفته میشه و به توابع STATIC و یا توابع کتابخانه ای بیشتر تابع گفته میشه.
چشم ظاهر گر نبیند عیب نیست چشم دل گر ننگرد باید گریست**********اَلسَّلامُ عَلَى الْحُسَيْنِ وَ عَلى عَلِىِّ بْنِ الْحُسَيْنِ وَ عَلى اَوْلادِ الْحُسَيْنِ وَ عَلى اَصْحابِ الْحُسَيْنِ
به نقل كتاب از جوزف البهاري:
متد زير مجموعه اي از فانكشن هست، هر متدي يك فانكشن هست اما هر فانكشني متد نيست.
براي مثال عملگر + يك Function هست اما Method نيست اما Math.Pow هم Method هست هم Function
جزئيات بيشتر و دقيق تر رو تو كتاب البهاري مطالعه كنيد.
نميدونم چرا كسي كتابهاي فوق العاده مفهومي و عميق جوزف البهاري و همين طور(كتاب بسيار مفهومي و نسبتا دشوار) جفري ريشتر رو نميخونه كه خداي دات نت بشه! من خودم اول راهم و چيز زيادي بلد نيستم، ولي چون اين مراجع رو مطالعه مي كنم بسياري از سوالات پايه اي اين سايت رو از اين كتابها ياد گرفتم. مطالعه مراجع فارسي كاملا اتلاف وقته. پيشنهاد ميكنم كتابهاي البهاري و يا ريشتر رو حتما مطالعه كنيد.
سلام
خیلی ممنون میشم برا من هم بفرستین
با تشکر
alireza_g698@yahoo.com