کمک در سی شارپ

فقق

Banned
سلام من از دوستان یک کمکی می خواستم :
public class nima
{
public string Coursebar{get;set;}
public void sara()
messagebox.show("Hello"(;


در فراخوانی
private void button1_click(object sender,.....)
{



messagebox("",nima.cCoursebar);



}

}

شاید در این جا یکم از نظر دستوری آنطور که می خواستم نشد ولی برنامه ام اینه .خوب این برنامه اشکال می گیره در {get;set;} سر این دو مشکل می گیره
من یک سوال دارم این {get;set;} در کجا کارببرد داره و برای چیست ؟
با تعریف set , get که دارای براکارد هستند چه فرقی دارد :
get
{

return ....


}

set
{


.......=value;



}
با این چه فرقی دارد ؟


سوال بعدی من این است که اگه ما بخوایم در بعضی جاها از زبان مثل جاوا و سی پلاس پلاس وسی کمک بگیریم سهم این کمک چقدر است
مثلا چند درصد متدهایی در سی شارپ با java & C++ & C شباهت کاربردی دارد یا بعضی چیزهای دیگر



 

the_king

مدیرکل انجمن
سلام من از دوستان یک کمکی می خواستم :
public class nima
{
public string Coursebar{get;set;}
public void sara()
messagebox.show("Hello"(;


در فراخوانی
private void button1_click(object sender,.....)
{



messagebox("",nima.cCoursebar);



}

}

شاید در این جا یکم از نظر دستوری آنطور که می خواستم نشد ولی برنامه ام اینه .خوب این برنامه اشکال می گیره در {get;set;} سر این دو مشکل می گیره
من یک سوال دارم این {get;set;} در کجا کارببرد داره و برای چیست ؟
با تعریف set , get که دارای براکارد هستند چه فرقی دارد :
get
{

return ....


}

set
{


.......=value;



}
با این چه فرقی دارد ؟


سوال بعدی من این است که اگه ما بخوایم در بعضی جاها از زبان مثل جاوا و سی پلاس پلاس وسی کمک بگیریم سهم این کمک چقدر است
مثلا چند درصد متدهایی در سی شارپ با java & C++ & C شباهت کاربردی دارد یا بعضی چیزهای دیگر



اگر شما بخواهید یک کلاس abstract (کلاسی که خودش مستقیما استفاده نمیشه، بلکه فقط زمانی قابل
استفاده است که کلاس دیگری ازش ارث بری کنه) بسازید، مشخصه های abstract اون کلاس رو باید با
get و set های خالی تعریف کنید. این خالی بودن به این دلیله که قرار نیست مشخصه پیاده سازی بشه،
این کلاس وارث است که پیاده سازی رو انجام میده. مشخصه abstract فقط نشون میده که قراره
همچین مشخصه ای در کلاس وارث باشه، اما هیچ کدی برایش مشخص نمیشه.

در سایر موارد که مشخصه رو دارید پیاده سازی می کنید نمی توانید get و set خالی بنویسید، چون معنی نداره
که یک مشخصه تعریف بشه اما مشخص نباشه که چی دریافت می کنه و چی ارسال می کنه.

اصولا زمانی از یک زبان دیگه کمک می گیرند که زبان اصلی از عهده کاری بر نیاد، #C احتیاج چندانی به زبان های
دیگه نداره. زبان C چون شیء گرا نیست فقط کمی از لحاظ ساختار ابتدایی زبان شبیه بقیه است وگرنه از لحاظ
عملکرد با این زبان های شیء گرا خیلی تفاوت داره، بدرد همکاری با #C هم نمی خوره.

Java و #C بهم شباهت های زیادی دارند اما چون #C یک زبان تحت Net. است، برای ارتباط با Java که ماشین
مجازی جدایی داره زیاد مناسب نیست، البته #J خودش یک زبان تحت Net. است و بحث اش جداست.
++C یکم از #C پیچیده تر است و یکسری عملکرد هایشان هم متفاوته، اما در اغلب موارد با هم سازگار اند.
اگه توابع DLL با کد های Native رو با ++C بسازید، سرعت اجرای بالای ++C برای برنامه های #C مناسب است
اما اگر بخواهید از C++ CLR استفاده کنید کمک چندانی به #C نمی کند.
 

جدیدترین ارسال ها

بالا