<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6263938190562280613</id><updated>2011-07-08T15:27:29.553+04:30</updated><category term='this'/><category term='value'/><category term='public'/><category term='کلاسهایAbstract'/><category term='bugs'/><category term='modifier'/><category term='Multiinheritance'/><category term='event'/><category term='method'/><category term='Parse'/><category term='Abstract'/><category term='interface'/><category term='set'/><category term='WEBAPP'/><category term='Exception'/><category term='indexer'/><category term='++C'/><category term='کلاس مشتق شده'/><category term='مدیریتخطاها'/><category term='cast'/><category term='کلاس'/><category term='Convert'/><category term='class'/><category term='Virtual'/><category term='get'/><category term='پاکسازی حافظه'/><category term='readonly'/><category term='Inheritance'/><category term='Object'/><category term='Override'/><category term='اعدادمختلط'/><category term='ایندکسر'/><category term='اعضای واسط'/><category term='catch'/><category term='return type'/><category term='GC.Collect'/><category term='double'/><category term='fields'/><category term='finally'/><category term='static'/><category term='field'/><category term='property'/><category term='[int index]'/><category term='program'/><category term='کلاسهای گنگ'/><category term='struct'/><category term='وراثت'/><category term='Abstractclass'/><category term='تفاوت بین parse و Convert'/><category term='if...else'/><category term='Complex'/><category term='what&apos;s different between class and struct'/><category term='usererror'/><category term='properties'/><category term='private'/><category term='C#'/><category term='stack'/><category term='protected'/><category term='Constructors'/><category term='Interfaceیااعضای واسط'/><category term='try'/><category term='Polymorphism'/><category term='enumeratiom'/><category term='سازنده ها'/><category term='reference'/><category term='out'/><category term='structure'/><category term='شیگرا'/><category term='index'/><category term='VB.Net'/><category term='methods'/><category term='اینترفیس'/><category term='جومونگ'/><category term='parse and Convert'/><title type='text'>آموزش #C</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>محمدعلی</name><uri>http://www.blogger.com/profile/06227232162558442331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>28</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-2309942387157972308</id><published>2010-01-22T09:41:00.007+03:30</published><updated>2010-01-22T09:56:21.568+03:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Inheritance'/><category scheme='http://www.blogger.com/atom/ns#' term='index'/><category scheme='http://www.blogger.com/atom/ns#' term='Abstract'/><category scheme='http://www.blogger.com/atom/ns#' term='ایندکسر'/><category scheme='http://www.blogger.com/atom/ns#' term='Override'/><category scheme='http://www.blogger.com/atom/ns#' term='Polymorphism'/><category scheme='http://www.blogger.com/atom/ns#' term='indexer'/><category scheme='http://www.blogger.com/atom/ns#' term='this'/><category scheme='http://www.blogger.com/atom/ns#' term='[int index]'/><category scheme='http://www.blogger.com/atom/ns#' term='Object'/><category scheme='http://www.blogger.com/atom/ns#' term='modifier'/><category scheme='http://www.blogger.com/atom/ns#' term='وراثت'/><category scheme='http://www.blogger.com/atom/ns#' term='property'/><category scheme='http://www.blogger.com/atom/ns#' term='return type'/><title type='text'>indexer</title><content type='html'>&lt;div dir="rtl" style="text-align: right;"&gt;&lt;div dir="rtl" style="text-align: right;"&gt;    سلام&lt;br /&gt;&lt;/div&gt;&lt;div dir="rtl" style="text-align: right;"&gt;بعد از یک امتحان آمار سنگین و نافرم ونا جور و غیره&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: right;"&gt;اومدیم سراغ indexer&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: right;"&gt;indexer چیه؟! به چه کاری میاد؟!&lt;br /&gt;&lt;/div&gt;indexer یه چیزی مثل property ها هست از نظر تعریفی و کارش اینه که میذاره رو آرایه ای از شی ها و Object ها به طور مستقیم دسترسی داشته باشیم!&lt;br /&gt;مثلاً وقتی یک آرایه 10 عنصری داشتیم وقتی می خواستیم مثلاً عنصر هفتم رو مقدار دهی کنیم با این فرض که اسم آرایه A باشه این کار رو می کردیم!&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;A[6]=78;&lt;br /&gt;&lt;/div&gt;و دقیقاً همین کار رو برای Object ها با indexer ها انجام می دیم!&lt;br /&gt;حالا indexer رو چه جوری تعریف می کنیم:&lt;br /&gt;indexer مثل property تعریف میشه و set و get داره!&lt;br /&gt;اول سطح دسترسی یا modifier رو تعریف می کنیم! بعد مقدار برگشتی یا return type و در آخر هم مقدار آرگومان ها در کنار کلمه index و در آخر هم set و get:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;div style="text-align: left;"&gt;&lt;span class="smallblack"&gt;(modifier) (return type) this [(argument)  index]&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span class="smallblack"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; get&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; {&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; // Get codes goes here&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; }&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; set&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; {&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; // Set codes goes here&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; }&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; }&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;مثلاٌ:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;private string []data = new string[5];&lt;br /&gt;public string this [int index]&lt;br /&gt;&lt;div style="text-align: left;"&gt;{&lt;br /&gt;get&lt;br /&gt;{&lt;br /&gt;&lt;/div&gt;return data[index];&lt;br /&gt;&lt;div style="text-align: left;"&gt;}&lt;br /&gt;set&lt;br /&gt;{&lt;br /&gt;data[index] = value;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;}&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;و این هم استفاده کردنش تو برنامه اصلی!&lt;br /&gt;&lt;/div&gt;&lt;div dir="ltr" style="text-align: left;"&gt;class program&lt;br /&gt;&lt;div style="text-align: left;"&gt;{&lt;br /&gt;public static void Main()&lt;br /&gt;{&lt;br /&gt;MyClass mc = new MyClass();&lt;br /&gt;mc[0] = "Rajesh";&lt;br /&gt;mc[1] = "A3-126";&lt;br /&gt;mc[2] = "Snehadara";&lt;br /&gt;mc[3] = "Irla";&lt;br /&gt;&lt;/div&gt;mc[4] = "Mumbai";&lt;br /&gt;Console.WriteLine("{0},{1},{2},{3},{4}",mc[0],mc[1],mc[2],mc[3],mc[4]);&lt;br /&gt;&lt;div style="text-align: left;"&gt;}&lt;br /&gt;&lt;/div&gt;}&lt;br /&gt;&lt;/div&gt;برای کسایی که می خوان برنامه سازی پیشرفته امتحان بدن تا همین جا کافیه ولی برای کسایی که می خوان بیشتر بدونن:&lt;br /&gt;indexer ها به ارث هم می رسن:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;span class="smallblack"&gt;using System;&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt;class Base&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; public int this[int indxer]&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; {&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt;get&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; {&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; Console.Write("Base GET");&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; return 10;&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; }&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; set&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; {&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; Console.Write("Base SET");&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; }&lt;/span&gt;&lt;br /&gt;&lt;span class="smallblack"&gt; }&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span class="smallblack"&gt;}&lt;/span&gt; &lt;/div&gt;&lt;p style="text-align: left;" dir="ltr"&gt;class Derived : Base&lt;br /&gt;{&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: left;" dir="ltr"&gt;...&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: left;" dir="ltr"&gt;..&lt;br /&gt;&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt;.&lt;br /&gt;}&lt;br /&gt;class program&lt;br /&gt;&lt;/div&gt;&lt;p style="text-align: left;" dir="ltr"&gt;{&lt;br /&gt;public static void Main()&lt;br /&gt;{&lt;br /&gt;Derived d1 = new Derived();&lt;br /&gt;d1[0] = 10;&lt;br /&gt;Console.WriteLine(d1[0]);&lt;br /&gt;}&lt;br /&gt;}&lt;/p&gt;indexer ها رو میشه override کرد یعنی &lt;span class="smallblack"&gt;Polymorphism:&lt;br /&gt;&lt;/span&gt;&lt;p dir="ltr" style="text-align: left;"&gt;using System;&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" style="text-align: left;"&gt;class Base&lt;br /&gt;{&lt;br /&gt;public virtual int this[int index]&lt;br /&gt;{&lt;br /&gt;get&lt;br /&gt;{&lt;br /&gt;Console.Write("Base GET");&lt;br /&gt;return 10;&lt;br /&gt;}&lt;br /&gt;set&lt;br /&gt;{&lt;br /&gt;Console.Write("Base SET");&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" style="text-align: left;"&gt;class Derived : Base&lt;br /&gt;{&lt;br /&gt;public override int this[int index]&lt;br /&gt;{&lt;br /&gt;get&lt;br /&gt;{&lt;br /&gt;Console.Write("Derived GET");&lt;br /&gt;return 10;&lt;br /&gt;}&lt;br /&gt;set&lt;br /&gt;{&lt;br /&gt;Console.Write("Derived SET");&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; class program&lt;br /&gt;{&lt;br /&gt;public static void Main()&lt;br /&gt;{&lt;br /&gt;Base b1 = new Derived();&lt;br /&gt;b1[0]= 10;&lt;br /&gt;Console.WriteLine(b1[0]);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;و از همه مهم تر میشه indexer ها رو Abstract هم تعریف کرد!&lt;br /&gt;&lt;p dir="ltr" style="text-align: left;"&gt;using System;&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" style="text-align: left;"&gt;abstract class Abstract&lt;br /&gt;{&lt;br /&gt;public abstract int this[int index]&lt;br /&gt;{&lt;br /&gt;get;&lt;br /&gt;set;&lt;br /&gt;}&lt;br /&gt;}&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" style="text-align: left;"&gt;class Concrete : Abstract&lt;br /&gt;{&lt;br /&gt;public override int this[int index]&lt;br /&gt;{&lt;br /&gt;get&lt;br /&gt;{&lt;br /&gt;Console.Write(" GET");&lt;br /&gt;return 10;&lt;br /&gt;}&lt;br /&gt;set&lt;br /&gt;{&lt;br /&gt;Console.Write(" SET");&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; class program&lt;br /&gt;{&lt;br /&gt;public static void Main()&lt;br /&gt;{&lt;br /&gt;Concrete c1 = new Concrete();&lt;br /&gt;c1[0] = 10;&lt;br /&gt;Console.WriteLine(c1[0]);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;منبع کد ها: http://www.csharphelp.com/2006/04/-c-indexers/&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-2309942387157972308?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/2309942387157972308/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2010/01/indexer.html#comment-form' title='2 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/2309942387157972308'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/2309942387157972308'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2010/01/indexer.html' title='indexer'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-4747430603471645426</id><published>2010-01-14T00:57:00.010+03:30</published><updated>2010-01-19T09:15:57.951+03:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='event'/><category scheme='http://www.blogger.com/atom/ns#' term='اعضای واسط'/><category scheme='http://www.blogger.com/atom/ns#' term='اینترفیس'/><category scheme='http://www.blogger.com/atom/ns#' term='method'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='Interfaceیااعضای واسط'/><category scheme='http://www.blogger.com/atom/ns#' term='Multiinheritance'/><category scheme='http://www.blogger.com/atom/ns#' term='Abstract'/><category scheme='http://www.blogger.com/atom/ns#' term='indexer'/><category scheme='http://www.blogger.com/atom/ns#' term='VB.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='property'/><category scheme='http://www.blogger.com/atom/ns#' term='interface'/><category scheme='http://www.blogger.com/atom/ns#' term='cast'/><category scheme='http://www.blogger.com/atom/ns#' term='WEBAPP'/><category scheme='http://www.blogger.com/atom/ns#' term='field'/><title type='text'>Interface یا اعضای واسط</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold; color: rgb(0, 153, 0);"&gt;درست شد&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;سلاملکم!&lt;br /&gt;قبل از هر چیزی می خواستم تشکر کنم از کسایی که نظر می دن و روح ما رو شاد می کنن! هرچی نظرات بیشتر باشه روح ما شاد تر میشه!:D&lt;br /&gt;یه آقا یا خانومی هم تو اولین پستم خواسته بودن که بگم چرا سی شارپ! اما از اونجایی که به معرفی زبان های برنامه نویسی نمی پردازم بهتره بود یک آدرس وبلاگ یا ای میل می دادن که توضیح بدم!&lt;br /&gt;ولی در کل C# برای این که از نظر شی گرایی زبان خیلی قویی هست و در زمینه WEB APP هم خیلی خیلی قوی عمل می کنه و همین طور زبان آسونیه از نظر دستوراتش خیلی زبان مفیدیه گرچه که هنوز خیلی ها با VB.Net حال می کنن!&lt;br /&gt;interface چیه؟!&lt;br /&gt;یه چیزی تو مایه های کلاس های Abstract هست که همه اعضاعش public هستن بی چون و چرا&lt;br /&gt;حالا چراش رو برو از خود کسی که طراحیش کرده بپرس!:D&lt;br /&gt;فاییده اصلی interface اینه که ارث بری چندگانه (Multi inheritance) رو برای ما ممکن می کنه که خیلی فاییده داره (دقیقاً نمی دونم فاییده اش چیه...ولی مفیده دیگه...ایشالا وقتی حرفه ای شدیم می فهمیم فاییده اش چیه) که این کار از عهده کلاس های معمولی و کلاس های گنگ(Abstract ) بر نمیاد&lt;br /&gt;توی interface نمیشه field تعریف کرد! ولی انواع event,indexer,property,method رو میشه تعریف کرد!&lt;br /&gt;event چیه؟!&lt;br /&gt;بعداً می رسیم بهش....عجله نکن!&lt;br /&gt;از خاصیت های Interface اینه که چی؟!&lt;br /&gt;؟!&lt;br /&gt;آهان..ببخشید...از خاصیت های interface اینه که هر کلاسی که ازش مشتق بشه...وظیف داره یعنی وظیفه داره که تمامیه event,indexer,property,method هایی رو که تو interface وجود داره رو برای خودش تعریف کنه!&lt;br /&gt;و این موضوع حتماً باید اتفاق بیفته....اگر تعریف نشه error میده که خیلی خوشایند نیست برای انسان!&lt;br /&gt;تا یادم نرفته بگم که یک interface رو میشه از یک interface مشتق گرفت&lt;br /&gt;&lt;br /&gt;بعضی وقتا...ما احتیاج داریم که یکی از متد ها یا ویژگی ها یا حادثه ها رو پنهان کنیم از کلاس هایی که از interface مشتق شدن (البته این کار عین خودزنیه تو تفاوت Abstract و Interface میگم چرا) به هر حال! باید اسم interface interface رو موقع تعریف ضابطه درج کنیم که پنهان بشه&lt;br /&gt;برای دست رسی به این عضو پنهان شده کافیه که به صورت&lt;span style="color: rgb(0, 153, 0);"&gt; &lt;/span&gt;&lt;span style="color: rgb(51, 204, 0);"&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;cas&lt;span style="color: rgb(0, 153, 0);"&gt;t&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; اسم اینترفیس رو بیاریم&lt;br /&gt;مثلاً در تعریف اعضا:(ishape اسم interface هست)&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;div style="text-align: left;"&gt;int &lt;span style="color: rgb(255, 0, 0);"&gt;ishape&lt;/span&gt;.shapeshifter(int val)&lt;br /&gt;&lt;/div&gt;{&lt;br /&gt;...&lt;br /&gt;..&lt;br /&gt;.&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: right;"&gt;مثلاً در Main&lt;br /&gt;&lt;/div&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;div style="text-align: left;"&gt;ishape tmp =&lt;span style="color: rgb(51, 204, 0);"&gt; &lt;span style="color: rgb(0, 153, 0);"&gt;(ishape)&lt;/span&gt;&lt;/span&gt;myshape;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: right;"&gt;برخلاف متدهای Abstract که باید اونها رو override می کردیم تا بتونیم ازشون استفاده بکنیم متد ها و چیزهایه دیگه interface رو باید پیاده سازی بکنیم...یعنی با همون نام مثلاٌ متد و مقدار برگشتی و غیره! به لطف یکی از بچه های دانشگاه که من رو از جهل مرکب در اورد(آن کس که نداند و نداند که نداند...درجهل مرکب ابدالدهر بماند!)من فکر می کردم می دونم جریان اینترفیس رو...ولی به لطف ایشون فهمیدم که نه خیر...در جهل مرکب دارم به سر می برم!...خلاصه متوجه شدیم که اگر اینترفیس ها رو پاک کنیم و وراثت ها رو هم بگیریم...همچنان برنامه کار می کنه! علتش هم اینه که کلاس هایی که از اینترفیس ها مشتق میشن وابستگی به اینترفیس ندارن و فقط باید و باید حتماً تمامی متدها و غیره ی اینترفیس رو پیاده سازی کنن! اما در صورتی که از کلاس مشتق بگیریم یا Abstract ها به خاطر این که باید override بکنیم متدها و غیره رو وابستگی ایجاد میشه بین کلاس پدر(یا مادر) و کلاس های فرزند!&lt;br /&gt;این هم مثال اینترفیس!:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;         &lt;span style="color: rgb(0, 0, 0);font-size:85%;" &gt;interface&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-size:85%;" &gt; IMyInterface&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);font-size:85%;" &gt;             {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);font-size:85%;" &gt;void&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-size:85%;" &gt;             MethodToImplement();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);font-size:85%;" &gt;             }&lt;br /&gt;&lt;/span&gt;&lt;p style="color: rgb(0, 0, 0);"&gt;         &lt;span style="font-size:85%;"&gt;class&lt;/span&gt;&lt;span style="font-size:85%;"&gt; InterfaceImplementer : IMyInterface&lt;br /&gt;          {&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;static&lt;/span&gt;&lt;span style="font-size:85%;"&gt;         &lt;/span&gt;&lt;span style="font-size:85%;"&gt;void&lt;/span&gt;&lt;span style="font-size:85%;"&gt; Main()&lt;br /&gt;{&lt;br /&gt;InterfaceImplementer iImp = &lt;/span&gt;         &lt;span style="font-size:85%;"&gt;new&lt;/span&gt;&lt;span style="font-size:85%;"&gt; InterfaceImplementer();&lt;br /&gt;iImp.MethodToImplement();&lt;br /&gt;}&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;public&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;"&gt;                 void&lt;/span&gt;&lt;span style="font-size:85%;"&gt; MethodToImplement()&lt;br /&gt;{&lt;br /&gt;Console.WriteLine("MethodToImplement()                     called.");&lt;br /&gt;}&lt;br /&gt;                  }&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;     &lt;/p&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div dir="ltr" class="flockcredit" style="text-align: right; color: rgb(204, 204, 204); font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-4747430603471645426?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/4747430603471645426/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2010/01/interface.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/4747430603471645426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/4747430603471645426'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2010/01/interface.html' title='Interface یا اعضای واسط'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-7098517740905938241</id><published>2010-01-08T12:39:00.004+03:30</published><updated>2010-01-08T12:50:33.815+03:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Object'/><category scheme='http://www.blogger.com/atom/ns#' term='methods'/><category scheme='http://www.blogger.com/atom/ns#' term='fields'/><category scheme='http://www.blogger.com/atom/ns#' term='کلاسهای گنگ'/><category scheme='http://www.blogger.com/atom/ns#' term='Abstractclass'/><category scheme='http://www.blogger.com/atom/ns#' term='کلاسهایAbstract'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Abstract'/><category scheme='http://www.blogger.com/atom/ns#' term='Override'/><title type='text'>Abstract class</title><content type='html'>did you miss me?!:D&lt;br /&gt;سلام&lt;br /&gt;امروز می خوام کلاس های گنگ یا Abstract رو بگم برات&lt;br /&gt;&lt;br /&gt;خب&lt;br /&gt;اول ا ز همه بگم که این بحث ادامه بحث وراثت هست! یه مدت به یه سری بحث های دیگه رفتم که الان روباره ادامه وراثت رو می رم&lt;br /&gt;&lt;br /&gt;اگه یادت باشه وقتی که می خواستیم یه کلاس رو از یک کلاس دیگه مشتق بگیریم مجبور بودیم برای این که خاصیت های کلاس پایه رو تغییر بدیم و اون چیزی رو که می خوایم تو کلاس مشتق شده بیاریم! و باید override می کردیم و کار های دیگه!&lt;br /&gt;ولی فاییده کلاس های Abstract اینه که مثل کلاس های معمولی احتیاجی نیست که متد ها رو تعریف کنیم! بلکه فقط اسم متد رو میاریم و هر کلاسی رو که بخوایم ازش مشتق گیری جدا جدا متد ها رو برای کلاس مشتق شده استفاده می کنیم!&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;نکته خیلی مهم اینه که از کلاس های &lt;span style="color: rgb(51, 204, 0);"&gt;Abstract&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;نمیشه&lt;/span&gt; &lt;span style="color: rgb(51, 204, 0);"&gt;Object&lt;/span&gt; ساخت و ازشون نمونه گیری کرد&lt;/span&gt;&lt;br /&gt;توجه کنیم که متد های Abstract حتماً باید تو کلاس های Abstract تعریف بشن&lt;br /&gt;توی کلاس های Abstract : &lt;span style="color: rgb(51, 204, 0);"&gt;properties&lt;/span&gt; , &lt;span style="color: rgb(51, 102, 255);"&gt;methods&lt;/span&gt;, &lt;span style="color: rgb(255, 0, 0);"&gt;fields&lt;/span&gt;  می تونن تعریف بشن!&lt;br /&gt;&lt;div style="text-align: left;"&gt;مثال&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;abstract class &lt;/span&gt;&lt;span style="color:teal;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Vehicles&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;p class="MsoNormal" style="margin: 0in 0in 0pt; text-indent: 0.5in; text-align: left;"&gt;&lt;span style=";font-family:'Courier New';font-size:100%;"  &gt; &lt;/span&gt;&lt;/p&gt;&lt;div&gt; &lt;/div&gt;&lt;p dir="ltr" class="MsoNormal" style="margin: 0in 0in 0pt; text-align: left;"&gt;&lt;span style=";font-family:'Courier New';font-size:100%;"  &gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;  &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" class="MsoNormal" style="margin: 0in 0in 0pt; color: rgb(255, 0, 0); text-align: left;"&gt;&lt;span style=";font-family:'Courier New';font-size:100%;"  &gt;&lt;span&gt;        &lt;/span&gt;private int noOfWheel;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" class="MsoNormal" style="margin: 0in 0in 0pt; text-align: left;"&gt;&lt;span style=";font-family:'Courier New';font-size:100%;"  &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;        private string color;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" class="MsoNormal" style="margin: 0in 0in 0pt; color: rgb(51, 204, 0); text-align: left;"&gt;&lt;span style=";font-family:'Courier New';font-size:100%;"  &gt;&lt;span&gt;        &lt;/span&gt;public abstract string Engine&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" class="MsoNormal" style="margin: 0in 0in 0pt; color: rgb(51, 204, 0); text-align: left;"&gt;&lt;span style=";font-family:'Courier New';font-size:100%;"  &gt;&lt;span&gt;        &lt;/span&gt;{&lt;span&gt;   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" class="MsoNormal" style="margin: 0in 0in 0pt; color: rgb(51, 204, 0); text-align: left;"&gt;&lt;span style=";font-family:'Courier New';font-size:100%;"  &gt;&lt;span&gt;            &lt;/span&gt;get;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" class="MsoNormal" style="margin: 0in 0in 0pt; color: rgb(51, 204, 0); text-align: left;"&gt;&lt;span style=";font-family:'Courier New';font-size:100%;"  &gt;&lt;span&gt;            &lt;/span&gt;set;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" class="MsoNormal" style="margin: 0in 0in 0pt; text-align: left;"&gt;&lt;span style=";font-family:'Courier New';font-size:100%;"  &gt;&lt;span style="color: rgb(51, 204, 0);"&gt;        }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;/div&gt;&lt;p dir="ltr" class="MsoNormal" style="margin: 0in 0in 0pt; text-align: left;"&gt;&lt;span style=";font-family:'Courier New';font-size:10;"  &gt;&lt;span style="font-size:100%;"&gt;        &lt;/span&gt;&lt;span style="color: rgb(51, 102, 255);font-size:100%;" &gt;public abstract void Accelerator();&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:'Courier New';font-size:10;"  &gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p dir="ltr" class="MsoNormal" style="margin: 0in 0in 0pt; text-align: left;"&gt;&lt;span style=";font-family:'Courier New';font-size:10;"  &gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt; &lt;span style="font-size:100%;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;و بقیه ماجرا مثل همون وراثت از طریق کلاس هست متد مورد نظر رو Override می کنی و سایر چیز ها&lt;br /&gt;مثل:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;Class Car : Vehicles&lt;br /&gt;{&lt;br /&gt;public override string Engine&lt;br /&gt;{&lt;br /&gt;get&lt;br /&gt;{&lt;br /&gt;...&lt;br /&gt;..&lt;br /&gt;.&lt;br /&gt;return &lt;span style=";font-family:'Courier New';font-size:100%;"  &gt;Engine&lt;/span&gt; ;&lt;br /&gt;}&lt;br /&gt;set&lt;br /&gt;{&lt;br /&gt;...&lt;br /&gt;..&lt;br /&gt;.&lt;br /&gt;&lt;span style=";font-family:'Courier New';font-size:100%;"  &gt;Engine&lt;/span&gt; = value ;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;public override Void Accelerator()&lt;br /&gt;{&lt;br /&gt;...&lt;br /&gt;..&lt;br /&gt;.&lt;br /&gt;}&lt;br /&gt;...&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;}&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;موفق و مؤید و پیروز باشی!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" class="flockcredit" style="text-align: right; color: rgb(204, 204, 204); font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-7098517740905938241?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/7098517740905938241/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2010/01/abstract-class.html#comment-form' title='2 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/7098517740905938241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/7098517740905938241'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2010/01/abstract-class.html' title='Abstract class'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-8406013932132321759</id><published>2010-01-02T13:41:00.007+03:30</published><updated>2010-01-02T20:05:39.379+03:30</updated><title type='text'>مثال شنبه آخرین جلسه کلاس استاد کی نژاد</title><content type='html'>بچه ها لطف کنین صحت لینک رو اعلام کنین!&lt;br /&gt;&lt;a href="http://massj.persiangig.com/Program.cs"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;لینک دانلود با پسوند .cs&lt;/a&gt;&lt;br /&gt;&lt;a href="http://massj.persiangig.com/f_in_out.txt"&gt;لینک دانلود با پسوند .txt&lt;/a&gt;&lt;br /&gt;(می دونید دیگه کلیک راست و Save target As...)&lt;br /&gt;برنامه:&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;using System;&lt;br /&gt;using System.IO;&lt;br /&gt;&lt;br /&gt;namespace _1&lt;br /&gt;{&lt;br /&gt;    public class f_in_out&lt;br /&gt;   {&lt;br /&gt;       string buffer;&lt;br /&gt;       public void appfile()&lt;br /&gt;       {&lt;br /&gt;           Console.WriteLine("Enter text to be stored i the file.");&lt;br /&gt;           Console.WriteLine("Enter a blank line to end input.");&lt;br /&gt;           StreamWriter myfile = File.AppendText("text.txt");&lt;br /&gt;           do&lt;br /&gt;           {&lt;br /&gt;               buffer = Console.ReadLine();&lt;br /&gt;               myfile.WriteLine(buffer);&lt;br /&gt;           } while (buffer != "");&lt;br /&gt;           Console.WriteLine("Done Writing");&lt;br /&gt;           Console.WriteLine("------------");&lt;br /&gt;           myfile.Close();&lt;br /&gt;       }&lt;br /&gt;       public void readfile()&lt;br /&gt;       {&lt;br /&gt;           StreamReader myfile1 = File.OpenText("text.txt");&lt;br /&gt;           while ((buffer = myfile1.ReadLine()) != null)&lt;br /&gt;           {&lt;br /&gt;               Console.WriteLine(buffer);&lt;br /&gt;           }&lt;br /&gt;           myfile1.Close();&lt;br /&gt;       }&lt;br /&gt;   }&lt;br /&gt;   class Program&lt;br /&gt;   {&lt;br /&gt;       static void Main()&lt;br /&gt;       {  f_in_out fob=new f_in_out();&lt;br /&gt;           fob.appfile();&lt;br /&gt;           fob.readfile();&lt;br /&gt;&lt;div style="text-align: left;"&gt;            Console.ReadLine();&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;       }&lt;br /&gt;   }&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://www.persiangig.com/notfound/#%20learning/Program.cs"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-8406013932132321759?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/8406013932132321759/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2010/01/blog-post.html#comment-form' title='1 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/8406013932132321759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/8406013932132321759'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2010/01/blog-post.html' title='مثال شنبه آخرین جلسه کلاس استاد کی نژاد'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-1137366498900084649</id><published>2009-12-23T00:01:00.002+03:30</published><updated>2009-12-23T00:04:15.886+03:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='catch'/><category scheme='http://www.blogger.com/atom/ns#' term='bugs'/><category scheme='http://www.blogger.com/atom/ns#' term='finally'/><category scheme='http://www.blogger.com/atom/ns#' term='usererror'/><category scheme='http://www.blogger.com/atom/ns#' term='مدیریتخطاها'/><category scheme='http://www.blogger.com/atom/ns#' term='Exception'/><category scheme='http://www.blogger.com/atom/ns#' term='try'/><title type='text'>مدیریت خطا ها</title><content type='html'>سه نوع خطا وجود دارد&lt;br /&gt;1.bugs : ای خطا معمولاً از خطا های برنامه نویس است&lt;br /&gt;2.user error: این خطا خطایه که از طرف کار بر ایجاد مثل مقدار نا مناسب دادن به یک فیلد&lt;br /&gt;3.Exception: خطای غیر عادی که کنترل آن توسط برنامه نویس دشواره و نمی تونه به راحتی اون رو تشخصی بده&lt;br /&gt;&lt;br /&gt;برای این که از شر این خطاها راحت بشیم باید اون قسمتی رو که احساس می کنیم خطا رخ میده رو مشخص کنیم با try بعد تو قسمت catch پیغامی رو که می خوایم که همون نوع خطا هست رو نشون بده می نویسیم و در آخر هم از finally استفاده می کنیم که چه در صورتی که خطا رخ بده و چه در صورتی که خطا رخ نده پیغامی رو نشون بده!&lt;br /&gt;&lt;br /&gt;اما گاهی اطلاع داریم که چه اتفاقی ممکنه بیفته و برای این که پیغام خطا رو نشون بدیم یک شی از جنس اون خطا صدا می کنیم که وقتی که اون خطا رخ داد پیغام مربوط به اون نمایش داده بشه!&lt;br /&gt;حالا یه چندتا مثالا نیگا کنیم!&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;    class Program&lt;br /&gt;    {&lt;br /&gt;        public static void Main()&lt;br /&gt;        {&lt;br /&gt;            int[] myarray = new int[5];&lt;br /&gt;            &lt;span style="color: rgb(255, 0, 0);"&gt;try&lt;/span&gt;&lt;br /&gt;            {&lt;br /&gt;                for (int ctr = 0; ctr &amp;lt; 10; ctr++)&lt;br /&gt;                {&lt;br /&gt;                    myarray[ctr] = ctr;&lt;br /&gt;                                    }&lt;br /&gt;            }&lt;br /&gt;            &lt;span style="color: rgb(255, 0, 0);"&gt;catch&lt;/span&gt;(&lt;span style="color: rgb(51, 204, 0);"&gt;Exception e&lt;/span&gt;)&lt;br /&gt;            {&lt;br /&gt;                Console.WriteLine(e);&lt;br /&gt;            }&lt;br /&gt;            Console.WriteLine("at end of class");&lt;br /&gt;            Console.ReadLine();&lt;br /&gt;        }&lt;br /&gt;&lt;/div&gt;تو این مثال از قصد کاری کردیم که خطا ایجاد بشه طول رشته از طول حلقه for کمتره پس خطا داره!&lt;br /&gt;و یک مثال هم با finally&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;br /&gt;    public static void Main()&lt;br /&gt;    {&lt;br /&gt;        int[] myarray = new int[5];&lt;br /&gt;        &lt;span style="color: rgb(255, 0, 0);"&gt;try&lt;/span&gt;&lt;br /&gt;        {&lt;br /&gt;            for (int ctr = 0; ctr &amp;lt; 10; ctr++)&lt;br /&gt;&lt;span style="color: rgb(102, 255, 153);"&gt;            //or for (int ctr = 0; ctr &amp;lt; 4; ctr++)&lt;/span&gt;&lt;br /&gt;            {&lt;br /&gt;                myarray[ctr] = ctr;&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;        &lt;span style="color: rgb(255, 0, 0);"&gt;catch &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;(&lt;span style="color: rgb(51, 204, 0);"&gt;Exeption e&lt;/span&gt;)&lt;/span&gt;&lt;br /&gt;        {&lt;br /&gt;            Console.WriteLine(e);&lt;br /&gt;            Console.WriteLine(" exception caught");&lt;br /&gt;        }&lt;br /&gt;        &lt;span style="color: rgb(51, 102, 255);"&gt;finally&lt;/span&gt;&lt;br /&gt;        {&lt;br /&gt;            Console.WriteLine("done with exception handling");&lt;br /&gt;        }&lt;br /&gt;        Console.WriteLine("end of program");&lt;br /&gt;        Console.ReadLine();&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;    }&lt;br /&gt;&lt;/div&gt;امیدوارم که به درد بخور بوده باشه و از نظر من مهمترین فایده ای که داره اینه که بعد از وقوع خطا برنامه همچنان اجرا میشه و این واقعاً عالیه!&lt;br /&gt;&lt;br /&gt;موفق و پیروز باشید!&lt;br /&gt; &lt;div dir="ltr" class="flockcredit" style="text-align: right; color: rgb(204, 204, 204); font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-1137366498900084649?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/1137366498900084649/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/12/blog-post.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/1137366498900084649'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/1137366498900084649'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/12/blog-post.html' title='مدیریت خطا ها'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-3493907113381238889</id><published>2009-10-30T00:52:00.003+03:30</published><updated>2009-10-31T16:20:04.771+03:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='class'/><category scheme='http://www.blogger.com/atom/ns#' term='structure'/><category scheme='http://www.blogger.com/atom/ns#' term='struct'/><category scheme='http://www.blogger.com/atom/ns#' term='what&apos;s different between class and struct'/><title type='text'>تفاوت کلاس و استراکچر</title><content type='html'>&lt;div dir="rtl" style="text-align: right;"&gt; یاد یه بنده خدایی افتادم!&lt;br /&gt;به اسم توماس!&lt;br /&gt;یه کتاب ریاضی نوشت!&lt;br /&gt;چند سال بعد خودش کتاب خودش رو گذاشت کنار و با یکی دیگه با نام فینی یه کتاب جدید نوشت و  اسم کتاب رو هم گذاشتن توماس فینی!&lt;br /&gt;حالا من هم دارم بعضی چیز هایی رو که خودم گفتم رو کنار می ذارم چیز هایی جدید رو جایگزینش می کنم!&lt;br /&gt;تو قسمت آموزش کلاس گفتم که:&lt;br /&gt;تفاوت کلاس و استراکچر&lt;br /&gt;ساختارها انواع مقداري هستند و مستقيماً مقدار را در خود نگه مي‌دارند و از اينرو در stack نگه‌داري مي‌شوند. استفاده از ساختارها همانند ساير انواع مقداري است.&lt;br /&gt;&lt;br /&gt;حالا می گم که کلاً این رو بذارین کنار!&lt;br /&gt;Class و Structure پنج تفاوت مهم با هم دارن:&lt;br /&gt;&lt;span class="mediumtext"&gt;1. تایپ استراکچر Value هست! تایپ کلاس Ref&lt;br /&gt;2. استراکچر به صورت default به صورت Public تعریف میشه ولی کلاس Private هست&lt;br /&gt;3.کلاس توانایی وراثت داره ولی struct نداره!&lt;br /&gt;4. کلمه this فقط در کلاس کار برد داره و کار می کنه و توی struct کار نمی کنه!&lt;br /&gt;5.به Structure ها نمیشه به صورت مستقیم مقدار اولیه نسبت داد! باید از سازنده ها استفاده کرد!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;به جرات می گم بهتون که تا حالا در هیچ سایت یا هیچ مقاله ای این پنج تفاوت با هم یکجا ذکر نشده! حتی اطمینان می دم که هیچ کودوم از استاد های دانشگاه ما هم این 5 مورد رو نمی دونن!&lt;br /&gt;مؤید باشید&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-3493907113381238889?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/3493907113381238889/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/10/blog-post.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/3493907113381238889'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/3493907113381238889'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/10/blog-post.html' title='تفاوت کلاس و استراکچر'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-2259608083093152212</id><published>2009-10-14T07:24:00.001+03:30</published><updated>2009-10-14T07:26:48.703+03:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Parse'/><category scheme='http://www.blogger.com/atom/ns#' term='Convert'/><category scheme='http://www.blogger.com/atom/ns#' term='تفاوت بین parse و Convert'/><category scheme='http://www.blogger.com/atom/ns#' term='parse and Convert'/><title type='text'>تفاوت Parse و Convert</title><content type='html'>&lt;div dir="rtl" style="text-align: right;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div dir="rtl" style="text-align: right;"&gt;&lt;span class="mediumtext"  style="font-family:Lucida Grande;"&gt;خب! مبحث ارث و میراث تا همین جا باشه خدمتتون! چون بقیه اش مطالبی هست که من خودم هم هنوز خوب درکش نکردم!&lt;img src="http://persiancoder.ir/images/smilies/icon_biggrin.gif" style="vertical-align: middle;" alt="خنده" title="خنده" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;مطلبی که الان می خوام بگم در مورد Parse هست!&lt;br /&gt;نمی دونم یادتون هست یا نه!&lt;br /&gt;ما وقتی که می خواستیم یک متغیر رو بهش مقدار بدیم و از کی برد بخونیمش این کار رو می کردیم مثلاً:&lt;/span&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;x=Convert.ToInt32(Console.ReadLine());&lt;br /&gt;&lt;/div&gt;&lt;span class="mediumtext"  style="font-family:Lucida Grande;"&gt;حالا می خوایم یه طور دیگه این کار رو انجام بدیم!&lt;br /&gt;اینطوری:&lt;br /&gt;&lt;/span&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;span class="mediumtext"  style="font-family:Lucida Grande;"&gt;x=Int32.Parse(Console.ReadLine());&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span class="mediumtext"  style="font-family:Lucida Grande;"&gt;فرقشون چیه؟!&lt;br /&gt;تو سایت MSDN نوشته که اگر یک استرینگ نال(بدون مقدار (Null)) رو به Convert بدیم! مقدار صفر رو بر می گردونه! ولی Parse این کار رو نمی کنه!&lt;br /&gt;و تنها تفاوتشون هم تو همینه!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-2259608083093152212?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/2259608083093152212/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/10/parse-convert.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/2259608083093152212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/2259608083093152212'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/10/parse-convert.html' title='تفاوت Parse و Convert'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-8584663526832868573</id><published>2009-09-22T09:39:00.001+03:30</published><updated>2009-09-22T09:41:36.840+03:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='وراثت'/><category scheme='http://www.blogger.com/atom/ns#' term='Virtual'/><category scheme='http://www.blogger.com/atom/ns#' term='Override'/><category scheme='http://www.blogger.com/atom/ns#' term='کلاس مشتق شده'/><title type='text'>Override &amp; Virtual</title><content type='html'>&lt;div dir="rtl" style="text-align: right;"&gt;&lt;span class="mediumtext"  style="font-family:Trebuchet;"&gt;مطلبی که می خواستم بگم در مورد تابع virtual و override کردن بود!&lt;br /&gt;&lt;br /&gt;از همون برنامه پایین! به این کد نگاه کنین:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;span style="color: rgb(0, 102, 0);font-family:Trebuchet;" class="mediumtext" &gt; &lt;/span&gt;&lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt;class Kaaj : Dereakht&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt; {&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt;     public virtual void derakht()&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt;     {&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left; color: rgb(0, 102, 0);"&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;         base.derakht();&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;         Console.WriteLine("رشد به صورت طبقه طبقه برگهای سوزنی و همیشه سبز");&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;     }&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt; }&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="mediumtext"&gt;&lt;code&gt; &lt;/code&gt;&lt;/span&gt;&lt;span class="mediumtext"  style="font-family:Trebuchet;"&gt;&lt;br /&gt;اگر ما درختی رو که می خوایم تعریف کنیم! از جنس کاج تعریف کنیم! مشکلی نداریم! اما اگه بگیم درخت اون وقته که خاصیت کاج براش نوشته نمیشه! یعنی خروجی برنامه فقط این میشه:&lt;br /&gt;ریشه ، ساقه ، برگ&lt;br /&gt;چرا این اتفاق میافته؟! واسه این که تابع کلاس کاج رو override نکردیم!&lt;br /&gt;&lt;br /&gt;اما مال سرو رو نگاه کنین:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt;class Sarv : Kaaj&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt; {&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt;     public override void derakht()&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt;     {&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt;         base.derakht();&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left; color: rgb(0, 102, 0);"&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;         Console.WriteLine("برگهای لطیف تر ، رشد منظم");&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt;     }&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 102, 0);" class="mediumtext"&gt;&lt;code&gt; }&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="mediumtext"&gt;&lt;code&gt; &lt;/code&gt;&lt;/span&gt;&lt;span class="mediumtext"  style="font-family:Trebuchet;"&gt;اگر سرو رو از جنس درخت  تعریف کنیم خروجی برنامه این میشه:&lt;br /&gt;ریشه ، ساقه ، برگ&lt;br /&gt;برگهای لطیف تر ، رشد منظم&lt;br /&gt;&lt;br /&gt;چرا این اینجوری میشه؟! برای این که تابع کلاسی رو که ازش سرو رو مشتق کردیم Virtual بوده و تابع سرو رو override کردیم! یعنی دیگه خاصیت های مال کاج رو نمایش نمیده! بلکه فقط خاصیت مربوط به سرو رو نمایش میده!&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="font-size:large;"&gt; نکته مهم اینه که تا وقتی تابع کلاس پایه virtual نباشه نمی تونم تابع کلاس مشتق شده رو override کنیم!&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;مثل این هست که مثلاً بدن شما از نظر فیزیکی به پدرتون رفته! این 2تا حالت داره یا تابع بدن پدر شما Virtual نبوده واسه همین شما ناچراً ازش استفاده می کنین! یا این که Virtual بوده ولی شما می خواستید که بدنتون مثل پدرتون بشه!(البته بحث مربوط به استخوان بندی و دوران طفولیت داخل شکم مادره!( &lt;img src="http://persiancoder.ir/images/smilies/icon_biggrin.gif" style="vertical-align: middle;" alt="خنده" title="خنده" border="0" /&gt; )&lt;br /&gt;&lt;br /&gt;اما در مورد اخلاقتون ، اخلاقتون به پدرتون رفته ولی رفتار های مربوط به خودتون رو هم دارین!&lt;br /&gt;این یعنی این که متد اخلاق پدر شما Virtual بوده و شما ازش استفاده کردین و override کردینش و اخلاق های مربوط به خودتون رو هم بهش اضافه کردین!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div dir="rtl" style="text-align: right;"&gt;&lt;span class="mediumtext"  style="font-family:Trebuchet;"&gt; البته این مثال خیلی دقیق نیست ولی کمک می کنه برای درک بیشتر!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-8584663526832868573?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/8584663526832868573/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/09/override-virtual.html#comment-form' title='1 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/8584663526832868573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/8584663526832868573'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/09/override-virtual.html' title='Override &amp; Virtual'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-5121532396551753025</id><published>2009-09-07T00:34:00.003+04:30</published><updated>2009-09-07T00:38:10.353+04:30</updated><title type='text'>نمونه برنامه وراثت</title><content type='html'>&lt;div dir="ltr" style="text-align: left; color: rgb(0, 0, 0);"&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;using System;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;class Dereakht&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;{&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    public virtual void derakht()&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    {&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;        Console.WriteLine("ریشه ، ساقه ، برگ");&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    }&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;}&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;class Tabrizi : Dereakht&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;{&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    public virtual void derakht()&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    {&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;        base.derakht();&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;        Console.WriteLine("بلند و دارای برگ های پهن");&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    }&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;}&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;class Kaaj : Dereakht&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;{&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    public virtual void derakht()&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    {&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;        base.derakht();&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;        Console.WriteLine("رشد به صورت طبقه طبقه برگهای سوزنی و همیشه سبز");&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    }&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;}&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;class Sarv : Kaaj&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;{&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    public override void derakht()&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    {&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;        base.derakht();&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="mediumtext"&gt;&lt;code dir="ltr"&gt;        Console.WriteLine("برگهای لطیف تر ، رشد منظم");&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;    }&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;}&lt;/code&gt;&lt;/span&gt;  &lt;/div&gt;&lt;div class="flockcredit" style="color: rgb(204, 204, 204); font-size: x-small; text-align: left;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-5121532396551753025?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/5121532396551753025/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/09/blog-post_07.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/5121532396551753025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/5121532396551753025'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/09/blog-post_07.html' title='نمونه برنامه وراثت'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-2926315047041535359</id><published>2009-09-04T23:11:00.001+04:30</published><updated>2009-09-04T23:11:19.543+04:30</updated><title type='text'>وراثت</title><content type='html'>&lt;span class="mediumtext"&gt;خب...! امروز می خوام وراثت رو بگم !&lt;br /&gt;&lt;br /&gt;اوایل این بحث مثل علم پزشکی می مونه!&lt;br /&gt;&lt;br /&gt;شما یک کلاس اصلی یا پدر رو ایجاد می کنید! فرزند یا فرزندان اون کلاس ، کلاس هایی هستن که خاصیتی رو از کلاس اصلی به ارث می برن یا به زبون دیگه مشتق میشن! حالا اگه از اون کلاس های مشتق شده ما فرزند یا فرزندان دیگه ای رو مشتق کنیم این فرزندان هم خاصیت پدر خودشون رو دارن و هم خاصیت کلاس اصلی رو دارن!&lt;br /&gt;&lt;br /&gt;مثل این می مونه! اپر پدربزرگ شما رو کلاس اصلی فرض کنیم(بی حترامی نباشه یه وقت) پس پدر شما میشه کلاس فرزند و شما هم میشید فرزند کلاس فرزند! شما هم خصوصیت هایی از پدرتون رو به ارث می برید! هم خصوصیت هایی از پدرتون رو و هم خصوصیاتی که مربوط به خودتون هست رو دارین!&lt;br /&gt;&lt;br /&gt;یکی از مهم ترین چیز هایی که باید بدونیم اینه که هیچ وقت خصوصیت ها از شما به پدرتون به ارث نمیرسه&lt;img src="http://persiancoder.ir/images/smilies/icon_biggrin.gif" style="vertical-align: middle;" alt="خنده" title="خنده" border="0" /&gt; بلکه همیشه از پدرتون بهتون به ارث میرسه!&lt;br /&gt;&lt;br /&gt;حالا یه مثال می زنم فردا هم با برنامه یه مثال می زنم که خوب متوجه بشید!&lt;br /&gt;&lt;br /&gt;ما می خوایم فاییده ی وراثت رو بدونیم!&lt;br /&gt;&lt;br /&gt;ما می خوایم برای یک شرکت باغداری (حالا مثلاً، گیر نده&lt;img src="http://persiancoder.ir/images/smilies/w13.gif" style="vertical-align: middle;" alt="کل کل" title="کل کل" border="0" /&gt; ) یه برنامه بنویسیم که توش 100 نوع درخت تعریف شده باشه!&lt;br /&gt;حالا به جای این که بیایم برای هر 100 نوع بگیم که ریشه داره ساقه داره شاخه داره برگ داره میام یه بار تو یه کلاس اصلی می گیم که درخت ریشه و ساقه و شاخه و برگ داره!&lt;br /&gt;حالا که می خوایم مثلاً نوع تبریزی درخت رو مثال تعرف کنیم می گیم که درخته و مثلاً ارتقاعش هم زیاده و برگ هاش هم پهنه! یعی علاوه بر خصوصیات کلاس اصلی خصوصیات مربوط به خودش رو هم داره!&lt;br /&gt;بعد می خوایم درخت کاج رو تعریف کنیم! می گیم که درخته و برگ های سوزنی داره و در تمام مدت سال برگهاش سبز هستن! و مثلاً به صورت طبقه طبقه رشد پیدا می کنه!&lt;br /&gt;حالا وقتی که بخوایم درخت سرو رو معرفی کنیم! دوباره نمیایم بگیم که تمام اون چیز های بالا رو در موردش! پس چی کار می کنیم؟! به جای این که بگیم درخته! میگیم کاجه و مثلاً برگهاش لطفیف تره و منظم رشد پیدا می کنه!&lt;br /&gt;&lt;br /&gt;این هم مقدمات بحث وراثت &lt;img src="http://persiancoder.ir/images/smilies/smile.gif" style="vertical-align: middle;" alt="Smile" title="Smile" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;برای این که خستگیتون هم در بره 2تا عکس براتون می ذارم!&lt;img src="http://persiancoder.ir/images/smilies/w23.gif" style="vertical-align: middle;" alt="دسته گل" title="دسته گل" border="0" /&gt;&lt;br /&gt;این عکس ها برای اینه که متوجه بشید منظورم از طبقه طبقه و منظم رشد کردن چیه:&lt;img src="http://persiancoder.ir/images/smilies/old.gif" style="vertical-align: middle;" alt="پیرمرد" title="پیرمرد" border="0" /&gt;&lt;br /&gt;کاج: &lt;a href="http://www.botaniewebsite.nl/araucaria/araucaria_heterophylla1.jpg" target="_blank"&gt;http://www.botaniewebsite.nl/araucaria/a...hylla1.jpg&lt;/a&gt;&lt;br /&gt;سرو: &lt;a href="http://upload.wikimedia.org/wikipedia/commons/3/32/Cupressus_sempervirens_Stricta.jpg" target="_blank"&gt;http://upload.wikimedia.org/wikipedia/co...tricta.jpg&lt;/a&gt;&lt;/span&gt;  &lt;div class="flockcredit" style="text-align: right; color: #CCC; font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: #999; font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-2926315047041535359?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/2926315047041535359/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/09/blog-post.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/2926315047041535359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/2926315047041535359'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/09/blog-post.html' title='وراثت'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-9127927008835850625</id><published>2009-08-29T07:54:00.000+04:30</published><updated>2009-08-29T07:55:39.653+04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='GC.Collect'/><category scheme='http://www.blogger.com/atom/ns#' term='++C'/><category scheme='http://www.blogger.com/atom/ns#' term='پاکسازی حافظه'/><category scheme='http://www.blogger.com/atom/ns#' term='readonly'/><title type='text'>readonly , GC.Collect</title><content type='html'>&lt;div dir="rtl" style="text-align: right;"&gt;    &lt;span class="mediumtext"&gt;چیز هایی که امروز می خوام خیلی چیز های مهمی نیستن...البته فعلاً بعداً بیشتر کاربرد پیدا می کنن&lt;br /&gt;&lt;br /&gt;کلمه کلیدی readonly&lt;br /&gt;&lt;br /&gt;همون طور که قبلاً هم گفتم این که کمترین سطح دسرسی رو برای هر چیزی قائل بشیم از اصول مهندسی نرم افزار خوب هست!&lt;br /&gt;&lt;br /&gt;این کلمه کلیدی کاری که می کنه اینه که  متغیر رو فقط یک بار میشه بهش مقدار داد و دیگه کار دیگه ای روش نمیشه کرد!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: left;"&gt;&lt;span dir="ltr" class="mediumtext"&gt;&lt;code&gt;private readonly int real;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;/span&gt;&lt;span class="mediumtext"&gt;&lt;br /&gt;مثل بالا هم ازش استفاده میشه!&lt;br /&gt;&lt;br /&gt;مورد بعدی پاکسازی حافظه هست!&lt;br /&gt;&lt;br /&gt;تو ++C ما هر وقت می خواستیم حافظه رو پاک می کردیم! اما تو #C پاکسازی حافظه خود به خود صورت می گیره و ما فقط می تونیم کاری کنیم که زود تر حافظه پاکسازی بشه! ولی زمانش رو نمی تونیم تعیین کنیم! با استفاده از متد GC.Collect این کار رو انجام می دیم! اون هم به این صورت که اسم متد اسم سازنده و کاراکتر هم نداره مثلاً سازنده Mydate رو که قبلاً هم داشتیم به این صورت پاکسازیش رو سریع تر می کنیم:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;~mydate()&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;{&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;&lt;code&gt;}&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span class="mediumtext"&gt;توجه کنیم که متدهای پاکسازی حافظه سطح دسترسی و مقدار برگشتی ندارن&lt;/span&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-9127927008835850625?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/9127927008835850625/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/readonly-gccollect.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/9127927008835850625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/9127927008835850625'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/readonly-gccollect.html' title='readonly , GC.Collect'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-8511866997313189247</id><published>2009-08-23T23:50:00.001+04:30</published><updated>2009-08-23T23:51:42.290+04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='enumeratiom'/><title type='text'>enumeratiom</title><content type='html'>این تایپ ها رابطه عددی با نوشته برقرار می کنن! یعنی این که به یک نوشته عددی رو نسبت می دیم! کاربرد های جالبی داره مقدار اولیه با صفر شروع میشه و بعدی مقدارش یکی بیشتر از قبلی خودش هست!&lt;br /&gt;ایطوریه:&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;  enum Days { sat , sun , mon , tue , wed , thu , fri }&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Days اسمش هست!&lt;br /&gt;&lt;br /&gt;مقادیرشون هم:&lt;br /&gt;sat = 0&lt;br /&gt;sun = 1&lt;br /&gt;mon = 2&lt;br /&gt;tue = 3&lt;br /&gt;wed = 4&lt;br /&gt;thu = 5&lt;br /&gt;fri = 6&lt;br /&gt;&lt;br /&gt;یکی از ویژگی هاش اینه که ما می تونیم مقدار دهی رو خودمون انجام بدیم!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;   enum Days { sat=5 , sun , mon , tue , wed=11 , thu , fri }&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;مقادیرشون هم:&lt;br /&gt; sat = 5&lt;br /&gt; sun = 6&lt;br /&gt; mon = 7&lt;br /&gt; tue = 8&lt;br /&gt; wed = 11&lt;br /&gt; thu = 12&lt;br /&gt; fri = 13&lt;br /&gt;&lt;br /&gt;این مقدار ها به طور پیش فرض با int مقدار دهی میشن! ولی خودمون می تونیم تغییر بدیم! مثلاً:&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;  enum Days : long { sat , sun , mon , tue , wed , thu , fri }&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: right;"&gt;  یک برنامه ساده :&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;  using system;&lt;br /&gt;enum Days : short&lt;br /&gt;{&lt;br /&gt;sat , sun , mon , tue , wed , thu , fri&lt;br /&gt;}&lt;br /&gt; class Program&lt;br /&gt;{&lt;br /&gt;{&lt;br /&gt;static void Main()&lt;br /&gt;for( Days d = Days.sat ; d &lt;= Days.fri ; d++ ) &lt;div style="text-align: left;"&gt;  Console.WriteLine(d);&lt;br /&gt;&lt;/div&gt;  }&lt;br /&gt;}&lt;br /&gt;   &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-8511866997313189247?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/8511866997313189247/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/enumeratiom.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/8511866997313189247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/8511866997313189247'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/enumeratiom.html' title='enumeratiom'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-1807782111189061222</id><published>2009-08-23T00:53:00.006+04:30</published><updated>2009-08-23T00:58:48.902+04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Constructors'/><category scheme='http://www.blogger.com/atom/ns#' term='سازنده ها'/><category scheme='http://www.blogger.com/atom/ns#' term='property'/><category scheme='http://www.blogger.com/atom/ns#' term='public'/><category scheme='http://www.blogger.com/atom/ns#' term='private'/><title type='text'>یا Constructors سازنده ها</title><content type='html'>&lt;div dir="rtl" style="text-align: right;"&gt;    سلام!&lt;br /&gt;&lt;br /&gt;امروز می خوام سازنده ها رو بگم!&lt;br /&gt;&lt;br /&gt;سازنده ها چی هستن؟!&lt;br /&gt;&lt;br /&gt;سازنده ها تنها کاری که می کنن اینه که مقدار دهی اولیه میکنن!&lt;br /&gt;&lt;br /&gt;مثلاً شما یک کلاس نوشتی که چهار تا متغیر داره که باید مقدار دهی بشن! ممکنه کاربر 3تاش رو وارد نکنه! در این صورت یا باید پیغام خطایی بهش نشون بدین که بگین داداش این ها رو وارد کن! یا این که باید به صورت پیش فرض مقادیری رو خودتون وارد کنید!&lt;br /&gt;&lt;br /&gt;و این سازنده ها هیچ کار دیگه ای انجام نمیدن! نذاشتی هم نذاشتی! ولی چیز مفیدیه&lt;br /&gt;این طوری هم تعریف میشن که اسم کلاس اولش یه سطح دسترسی می ذاریم و متغیری که می خوایم مقدار دهی کنیم معرفی می کنیم!&lt;br /&gt;&lt;br /&gt;مثلاً:&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;using system;&lt;br /&gt;calss MyDate&lt;br /&gt;{&lt;br /&gt;private int year , month , day ;&lt;br /&gt;public MyDate() : this(1 , 1 , 1) { }&lt;br /&gt;public MyDate(int y) : this(y , 1 , 1) { }&lt;br /&gt;public MyDate(int y , int m) : this(y , m , 1) { }&lt;br /&gt;public MyDate(int y , int m , int d)&lt;br /&gt;{&lt;br /&gt;Year = y ;&lt;br /&gt;Month = m ;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;Day= d ;&lt;br /&gt;&lt;/div&gt;}&lt;br /&gt;&lt;/div&gt;و بقیه برنامه!&lt;br /&gt;حالا تک تک توضیح می دم:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;public MyDate() : this(1 , 1 , 1) { } :&lt;br /&gt;&lt;/div&gt;اگر کاربر هیچ مقداری رو وارد نکنه برای سه تا متغیر year , month , day مقدار یک رو وارد می کنه!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;public MyDate(int y) : this(y , 1 , 1) { }&lt;br /&gt;&lt;/div&gt;اگر کاربر فقط مقدار سال رو وارد بکنه برای 2تا متغیر دیگه مقدار یک پیش فرض قرار داده میشه!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;public MyDate(int y , int m) : this(y , m , 1) { }&lt;br /&gt;&lt;/div&gt;اگر کاربر مقدار سال و ماه رو وارد کنه مقدار روز رو به صورت پیش فرض یک قرار میده!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;public MyDate(int y , int m , int d)&lt;br /&gt;{&lt;br /&gt;Year = y ;&lt;br /&gt;Month = m ;&lt;br /&gt;&lt;div style="text-align: left;"&gt;Day= d ;&lt;br /&gt;&lt;/div&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: right;"&gt;این جا کاربر هر 3تا مقدار رو وارد می کنه تمام سازنده های قبلی بعد از اجرا شدن به این قسمت میان تا مقدار متغیر های تازه تعریف شده مشخص بشه و بزرگ شدن حروف اول year , month , day برای همون مساله محدودیت دسترسیه! این طوری دیگه نیازی نیست که  property تعریف کنید براشون!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:78%;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-1807782111189061222?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/1807782111189061222/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/constructors.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/1807782111189061222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/1807782111189061222'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/constructors.html' title='یا Constructors سازنده ها'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-1418029455260635672</id><published>2009-08-18T02:21:00.006+04:30</published><updated>2009-08-18T02:38:21.193+04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='جومونگ'/><category scheme='http://www.blogger.com/atom/ns#' term='double'/><category scheme='http://www.blogger.com/atom/ns#' term='program'/><category scheme='http://www.blogger.com/atom/ns#' term='class'/><category scheme='http://www.blogger.com/atom/ns#' term='set'/><category scheme='http://www.blogger.com/atom/ns#' term='property'/><category scheme='http://www.blogger.com/atom/ns#' term='Complex'/><category scheme='http://www.blogger.com/atom/ns#' term='public'/><category scheme='http://www.blogger.com/atom/ns#' term='get'/><category scheme='http://www.blogger.com/atom/ns#' term='private'/><title type='text'>property</title><content type='html'>خب اما Property ها یا ویژگی ها به قول یه آقای بسیار محترمی ووژگی:D&lt;br /&gt;&lt;br /&gt;یکی از اصول برنامه نویسی اینه که ما کمترین سطح دسترسی رو برای هر چیزی قائل بشیم!&lt;br /&gt;&lt;br /&gt;پس طبق مطلب قبلی میایم کلاسمون رو این طوری تعریف می کنیم:&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;using system;&lt;br /&gt;class Complex&lt;br /&gt;{&lt;br /&gt;&lt;div style="text-align: left;"&gt;private double real , img ;&lt;br /&gt;&lt;/div&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;........&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;خب! همون طور که گفتم private فقط تو خود کلاس قابل دسترسیه!یعنی فقط تو کلاس Complex&lt;br /&gt;حالا اگه بخوایم توی کلاس Program از این ها استفاده کنیم تکلیف چیه؟! مثلاً بخوایم بگیم:&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;Complex c1 = new Complex () ;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c1.real&lt;/span&gt; = 3;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c1.img&lt;/span&gt; = 4;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;خب اینجا کامپایلر یکی از انگشت هاش رو به ما نشون میده که ممکنه معنی خیلی خوبی نداشته باشه! پس باید چی کار کنیم که این کار رو نکنه؟!&lt;br /&gt;میایم از ویژگی یا Property استفاده می کنیم:&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;using system;&lt;br /&gt;class Complex&lt;br /&gt;{&lt;br /&gt;private double real , img ;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;public double Real&lt;/span&gt;&lt;br /&gt;{&lt;br /&gt;get&lt;br /&gt;{&lt;br /&gt;return &lt;span style="color: rgb(51, 102, 255);"&gt;real&lt;/span&gt; ;&lt;br /&gt;}&lt;br /&gt;set&lt;br /&gt;{&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;real&lt;/span&gt; = value ;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;public double Img&lt;/span&gt;&lt;br /&gt;{&lt;br /&gt;get&lt;br /&gt;{&lt;br /&gt;return &lt;span style="color: rgb(51, 102, 255);"&gt;img&lt;/span&gt;;&lt;br /&gt;}&lt;br /&gt;set&lt;br /&gt;{&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;img&lt;/span&gt; = value;&lt;br /&gt;&lt;/div&gt;}&lt;br /&gt;}&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;..........&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;همون طور که می دونی C# به حروف بزرگ و کوچیک حساسه! پس برای این که بتونیم از متغیر هایی که private تعریفشون کردیم تو برنامه اصلیمون استفاده کنیم میایم proprty هایی میسازیم با همون اسم با این تفاوت که حرف اولش حرف بزرگه! البته این استانداردشه وگرنه شما اسمش رو بذار جومونگ! اگه کسی بهت چیزی گفت فقط تو برنامه اصلی برای این که دسترسی داشته باشی باید از جومونگ استفاده کنی!&lt;br /&gt;پس برای این که به c1 مقدار بدیم این کار رو می کنیم!:&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;Complex c1 = new Complex () ;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;c1.Real&lt;/span&gt; = 3 ;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;c1.Img&lt;/span&gt; = 4 ;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;به حروف بزرگ و کوچیک  Real , real و Img , img توجه کنید!&lt;br /&gt;&lt;br /&gt;حالا مثلاً جومونگ تعریف می کنیم!:&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;public double jumoong&lt;br /&gt;{&lt;br /&gt;get&lt;br /&gt;{&lt;br /&gt;return real ;&lt;br /&gt;}&lt;br /&gt;set&lt;br /&gt;{&lt;br /&gt;real = value ;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;public double joomong&lt;br /&gt;{&lt;br /&gt;get&lt;br /&gt;{&lt;br /&gt;return img ;&lt;br /&gt;}&lt;br /&gt;set&lt;br /&gt;{&lt;br /&gt;&lt;div style="text-align: left;"&gt;img = value ;&lt;br /&gt;&lt;/div&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;تو program باید این طوری استفاده کنیم:&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;Complex c1 = new Complex () ;&lt;br /&gt;&lt;div style="text-align: left;"&gt; c1.jumoong = 3 ;&lt;br /&gt;c1.joomoong = 4 ;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;-----------------------------------------------------&lt;br /&gt;set برای گرفتن مقدار هست یعنی اگر set نباشه نمی تونیم مقداری رو به real , img بدیم!&lt;br /&gt;get هم برای دسترسی هست ! البته کاربرد های قشنگ تری هم داره که بعداً بهش می رسیم!&lt;br /&gt;&lt;br /&gt;&lt;div class="flockcredit" style="text-align: right; color: rgb(204, 204, 204); font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-1418029455260635672?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/1418029455260635672/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/property.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/1418029455260635672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/1418029455260635672'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/property.html' title='property'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-1073069662854395343</id><published>2009-08-18T00:56:00.001+04:30</published><updated>2009-08-18T00:58:33.624+04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='value'/><category scheme='http://www.blogger.com/atom/ns#' term='static'/><category scheme='http://www.blogger.com/atom/ns#' term='protected'/><category scheme='http://www.blogger.com/atom/ns#' term='reference'/><category scheme='http://www.blogger.com/atom/ns#' term='stack'/><category scheme='http://www.blogger.com/atom/ns#' term='public'/><category scheme='http://www.blogger.com/atom/ns#' term='private'/><title type='text'>برخی از مفاهیم</title><content type='html'>public:&lt;br /&gt;چه تابع باشه چه متغیر باشه همه بهش دسترسی دارن!&lt;br /&gt;&lt;br /&gt;private:&lt;br /&gt;فقط در خود کلاس بهش دسترسی داریم!&lt;br /&gt;&lt;br /&gt;protected:&lt;br /&gt;فقط توی برنامه بهش دسترسی داریم مربوط میشه به بحث dll&lt;br /&gt;&lt;br /&gt;stack:&lt;br /&gt;خب این یه قسمتی از حافظه هست که مقادیری توش ذخیره میشه یه نوع reference و نوع دیگه value هست دقیقاً نمی دونم ولی فکر کنم reference به یک قسمت از stack اشاره می کنه و value مقدار رو تو خودش نگه میداره!&amp;nbsp; دوستانی که وارد تر هستن کمک کنن ممنون میشم!&lt;br /&gt;&lt;br /&gt;static:&lt;br /&gt;یکی از خواص توابع هست! وقتی یک تابه رو static تعریف می کنیم که تابع مربوط به یک شی باشه! مثلاً تابع جمع استاتیک تعریف نمی کنیم! ولی مثلاً تابعی که می خواد مقدار real و image یک عدد مختلط رو بخونه رو استاتیک تعریف میکنیم!&lt;br /&gt;&lt;br /&gt;فعلاً چیز دیگه ای به ذهنم نمیرسه! اگر رسید اضافه می کنم تو همین پستم!&amp;nbsp;   &lt;div class="flockcredit" style="text-align: right; color: #CCC; font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: #999; font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-1073069662854395343?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/1073069662854395343/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/blog-post_18.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/1073069662854395343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/1073069662854395343'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/blog-post_18.html' title='برخی از مفاهیم'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-6645016551239021757</id><published>2009-08-11T23:44:00.003+04:30</published><updated>2009-08-12T00:18:11.271+04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='class'/><category scheme='http://www.blogger.com/atom/ns#' term='کلاس'/><category scheme='http://www.blogger.com/atom/ns#' term='Complex'/><category scheme='http://www.blogger.com/atom/ns#' term='اعدادمختلط'/><title type='text'>یه برنامه با کلاس</title><content type='html'>خب! گفتم که اول یک برنامه با کلاس بنویسم که ببینی چه جوری میشه! مطلب بعدی رو در مورد یه سری مفاهیم می خوام بگم مثل&lt;br /&gt;&lt;div style="text-align: left;"&gt;public&lt;br /&gt;satic&lt;br /&gt;stack&lt;br /&gt;private&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.....&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;فایل Complex.cs شامل تعریف تایپ Complex&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;using System;&lt;br /&gt;   class Complex&lt;br /&gt;   {&lt;br /&gt;       public double real, img;&lt;br /&gt;       public void Read()&lt;br /&gt;       {&lt;br /&gt;           Console.WriteLine("Real:");&lt;br /&gt;           real = Convert.ToDouble(Console.ReadLine());&lt;br /&gt;           Console.WriteLine("img:");&lt;br /&gt;           img = Convert.ToDouble(Console.ReadLine());&lt;br /&gt;       }&lt;br /&gt;       public static Complex plus(Complex c1, Complex c2)&lt;br /&gt;       {&lt;br /&gt;           Complex c3 = new Complex();&lt;br /&gt;           c3.real = c1.real + c2.real;&lt;br /&gt;           c3.img = c1.img + c2.img;&lt;br /&gt;           return c3;&lt;br /&gt;       }&lt;br /&gt;       public void Write()&lt;br /&gt;       {&lt;br /&gt;           char sign;&lt;br /&gt;           sign= (img &amp;gt; 0) ? '+' : '-';&lt;br /&gt;&lt;div style="text-align: left;"&gt;            Console.WriteLine("{0}{1}{2}i",real,sign,Math.Abs(img));&lt;br /&gt;&lt;/div&gt;        }&lt;br /&gt;   }&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;فایل Program.cs شامل متد Main&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;using System;&lt;br /&gt;&lt;br /&gt;   class Program&lt;br /&gt;   {&lt;br /&gt;       static void Main()&lt;br /&gt;       {&lt;br /&gt;           &lt;span style="color: rgb(0, 153, 0);"&gt;Complex c1=new Complex();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;            Complex c2 = new Complex();&lt;/span&gt;&lt;br /&gt;           Console.WriteLine("Complex Number 1:");&lt;br /&gt;           c1.Read();&lt;br /&gt;           Console.WriteLine("Complex Number 2:");&lt;br /&gt;           c2.Read();&lt;br /&gt;           &lt;span style="color: rgb(255, 0, 0);"&gt;Complex c3;&lt;/span&gt;&lt;br /&gt;           c3 = Complex.plus(c1, c2);&lt;br /&gt;           Console.WriteLine("result : ");&lt;br /&gt;           c3.Write();&lt;br /&gt;&lt;div style="text-align: left;"&gt;            Console.Read();&lt;br /&gt;&lt;/div&gt;        }&lt;br /&gt;   }&lt;br /&gt;&lt;/div&gt;سوال: چرا &lt;span style="color: rgb(255, 0, 0);"&gt;c3&lt;/span&gt; مثل &lt;span style="color: rgb(0, 153, 0);"&gt;c2 , c1&lt;/span&gt; تعریف نشده؟!&lt;br /&gt;جواب: به عهده دانش آموز می باشد:D&lt;br /&gt;جواب: c3 رو می تونیم مثل اون 2تایه دیگه هم تعریف کنیم! هیچ مشکلی پیش نمیاد! اما از اونجایی که می خوایم بهش مقدار بدیم هیچ احتیاجی نیست که اون رو به صورت یک شی طریف کنیم و می توینم به صورت یک متغیر از جنس اعداد مختلط تعریف کنیم!&lt;br /&gt;حالا اگه همین طوری که نوشتیم بخوایم به c3 مقدار بدیم! یعنی این طوری:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;c3.real=0;&lt;br /&gt;&lt;div style="text-align: left;"&gt;c3.img=2;&lt;br /&gt;&lt;br /&gt;&lt;div dir="rtl" style="text-align: right;"&gt;این طوری هم مشکل داره! درسته که ما به c3  مقدار می دیم اما به خودش مقداری نمی دیم به اجزائش مقدار میدیم! برای همین زمان اجرا کردن به شما می گه c3 مقداری نداره!&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="flockcredit" style="text-align: right; color: rgb(204, 204, 204); font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-6645016551239021757?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/6645016551239021757/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/blog-post_5161.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/6645016551239021757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/6645016551239021757'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/blog-post_5161.html' title='یه برنامه با کلاس'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-1055796412243048591</id><published>2009-08-11T08:25:00.005+04:30</published><updated>2009-08-11T08:32:57.547+04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='class'/><category scheme='http://www.blogger.com/atom/ns#' term='کلاس'/><category scheme='http://www.blogger.com/atom/ns#' term='struct'/><category scheme='http://www.blogger.com/atom/ns#' term='Complex'/><category scheme='http://www.blogger.com/atom/ns#' term='stack'/><category scheme='http://www.blogger.com/atom/ns#' term='public'/><title type='text'>ایجاد یک کلاس</title><content type='html'>خب!&lt;br /&gt;&lt;br /&gt;حالا می خوایم یک کلاس از جنس اعداد مختلط درست کنیم!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;class Complex&lt;br /&gt;{&lt;br /&gt;&lt;div style="text-align: left;"&gt;public double real , img ;&lt;br /&gt;&lt;/div&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;خب اولین چیزی که به ذهنتون می رسه اینه که الاف کردی ما رو؟!این که همون struct هست&lt;br /&gt;&lt;br /&gt;خب واقعیتش اینه که این 2تا خیلی شبیه به هم هستن! ولی تفاوت های مهمی دارن&lt;br /&gt;&lt;br /&gt;اولین تفاوتشون مربوط به سازنده ها هست! چون هنوز نگفتم سازنده ها رو توضیحی در موردش نمی دم&lt;br /&gt;&lt;br /&gt;مورد بعدی اینه که وقتی که یک کلاس میسازیم از اعداد مختلط می توینم مقدار دهی اولیه اش بکنیم! ولی struct رو نمی تونیم!&lt;br /&gt;&lt;br /&gt;مثلاً&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;class&lt;/span&gt; Complex&lt;br /&gt;{&lt;br /&gt;public double &lt;span style="color: rgb(51, 102, 255);"&gt;real = 0&lt;/span&gt;;&lt;br /&gt;&lt;div style="text-align: left;"&gt;public double img;&lt;br /&gt;&lt;/div&gt;}&lt;br /&gt;&lt;/div&gt;در مورد بالا مشکلی به وجود نمیاد!&lt;br /&gt;اما:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;struct&lt;/span&gt; Complex&lt;br /&gt;{&lt;br /&gt;public double &lt;span style="color: rgb(255, 0, 0);"&gt;real = 0&lt;/span&gt;;&lt;br /&gt;&lt;div style="text-align: left;"&gt;public double img;&lt;br /&gt;&lt;/div&gt;}&lt;br /&gt;&lt;/div&gt;اینجا ما مشکل داریم : &lt;span style="color: rgb(51, 204, 0);"&gt;خطای زمان کامپایل&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;خب! حتماً الان دارین می گین که وای وای چه تفاوت مهمی! ولی در واقع خیلی مهم تر از اونیه که به نظر میاد&lt;br /&gt;&lt;br /&gt;یک جمله کلیدی:&lt;br /&gt;&lt;span style="color: rgb(204, 51, 204); font-weight: bold;" id="ctl00_ContentPlaceHolder1_fvPage_lnContent"&gt;&lt;span  lang="FA" style="font-family:Traffic;"&gt;ساختارها انواع مقداري هستند و مستقيماً مقدار را در خود نگه مي‌دارند و از اينرو در &lt;/span&gt;&lt;span dir="ltr"&gt;stack&lt;/span&gt;&lt;span  lang="FA" style="font-family:Traffic;"&gt; نگه‌داري مي‌شوند. استفاده از ساختارها همانند ساير انواع مقداري است.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;( &lt;span style="color: rgb(204, 51, 204);"&gt;http://learn.hge.ir/?name=learn_csharp.net_12&lt;/span&gt; )&lt;br /&gt;&lt;br /&gt;خب! stack نمی دونی چیه؟! stack یه قسمت از حافظه هست! اگر اطلاعات بیشتری می خوای این بار خودت باید بری بگردی!  و بفهمی که چی هست! چون استک مربوط به بحث های قبل میشه و بخوام برگردم توضیح بدم نمیشه دیگه! خودت برو پیدا کن! البته اگه واقعاً نیاز داشتی بگو تا بگم! البته بعداً در موردش حتماً توضیح می دم ولی بعداً کی هست نمی دونم!&lt;br /&gt;&lt;br /&gt;&lt;div class="flockcredit" style="text-align: right; color: rgb(204, 204, 204); font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-1055796412243048591?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/1055796412243048591/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/blog-post_11.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/1055796412243048591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/1055796412243048591'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/blog-post_11.html' title='ایجاد یک کلاس'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-858268225770690924</id><published>2009-08-06T21:28:00.005+04:30</published><updated>2009-08-07T10:35:09.321+04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='out'/><category scheme='http://www.blogger.com/atom/ns#' term='if...else'/><title type='text'>پیوست پست قبلی</title><content type='html'>&lt;span style="color: rgb(51, 204, 0);"&gt;فایل Complex.cs شامل تعریف ساختمان Complex&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;برای ساختن این فایل تو قسمت solution Explorer اسم پروژه که احتمالاً ConsoleApplication هست کلیک راست می کنیم و add و بعد class رو می زنیم و یک کلاس اضافه می کنیم و توی کلاسمون هرچی هست پاک می کنیم و اون چیزی رو که تو قسمت قبل نوشتم رو paste می کنیم!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;span style="color: rgb(51, 204, 0);"&gt;out&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;ما وقتی که یک تابع داریم با return فقط یک چیز رو می تونیم برگردونیم اما این جا ما احتیاج داشتمی که مقدار حقیق و تصویر عدد مختلط رو برگردونیم برای این که از out استفاده می کنیم!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt; &lt;span style="color: rgb(51, 204, 0);"&gt;(c.img&amp;gt; 0) ? '+' : '-';&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;این قسمت همون دستور If هست که این می تونیم این طوری هم بنویسیم:&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;if(c.img&amp;gt; 0)&lt;br /&gt;+&lt;br /&gt;else&lt;br /&gt;&lt;div style="text-align: left;"&gt;-&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div dir="ltr" class="flockcredit" style="text-align: right; color: rgb(204, 204, 204); font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-858268225770690924?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/858268225770690924/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/blog-post_06.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/858268225770690924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/858268225770690924'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/blog-post_06.html' title='پیوست پست قبلی'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-4898381026264836133</id><published>2009-08-06T17:13:00.008+04:30</published><updated>2009-08-06T21:34:55.865+04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='شیگرا'/><category scheme='http://www.blogger.com/atom/ns#' term='struct'/><title type='text'>تایپ struct</title><content type='html'>این شاید مقدمه ای باشه برای بحث شی گرا این تایپ رو به صورت زیر تعریف می کنیم&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;struct structuer-type-name&lt;br /&gt;{&lt;br /&gt;public data-type field;&lt;br /&gt;public data-type field;&lt;br /&gt;...&lt;br /&gt;...&lt;br /&gt;...&lt;br /&gt;public data-type field;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;مثلاً می خوایم با این تایپ اعداد مختلط رو بیان کنیم!&lt;br /&gt;(اگر نمی دونی عدد مختلط چیه بگو تا یه مثال دیگه بزنم!)&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;struct Complex&lt;br /&gt;{&lt;br /&gt;public float real;&lt;br /&gt;public float img;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;span style="color: rgb(51, 255, 51);font-size:85%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 204, 0);font-size:78%;" &gt;float مربوط به مقادیر اعشاری هست!&lt;/span&gt;&lt;br /&gt;حالا ما یک شی از یک عدد مختلط داریم&lt;br /&gt;همون طور که در قسمت مفهوم شی گرا گفتم این مثل یک طرح یا نقشه از یک عدد مختلط می مونه! و برای این که بتونیم ازش استفاده کنیم یک عدد مختلط نیاز داریم نه طرح یک عدد مختلط! پس یک عدد مختلط می سازیم!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;Complex c1 = new Complex ()&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;حالا یک عدد مختلط داریم به اسم c1&lt;br /&gt;حالا می تونیم با عدد مختلط کار کنیم! مثلاً یه سری مقدار بهش بدیم و معرفیش کنیم!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;c1.real = 2.3 ;&lt;br /&gt;c1.img = 1 ;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;حالا برای این که بهتر متوجه بشیم یه برنامه می نویسیم!&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;فایل Complex.cs شامل تعریف ساختمان Complex&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div dir="ltr" style="text-align: left;"&gt;using system;&lt;br /&gt;struct Complex&lt;br /&gt;{&lt;br /&gt;public double real,img;&lt;br /&gt;}&lt;br /&gt;////////////////////////&lt;br /&gt;&lt;div style="text-align: left;"&gt;فایل Program.cs شامل متد Main&lt;br /&gt;&lt;/div&gt;using system;&lt;br /&gt;class Program&lt;br /&gt;{&lt;br /&gt;static void Main()&lt;br /&gt;{&lt;br /&gt;Complex c1 , c2 ;&lt;br /&gt;Console.WriteLine ("Complex Number 1 :");&lt;br /&gt;ComplexRead (&lt;span style="color: rgb(255, 0, 0);"&gt;out&lt;/span&gt; c1);&lt;br /&gt;Console.WriteLine ("Complex Number 2 :");&lt;br /&gt;ComplexRead (out c2);&lt;br /&gt;Complex c3;&lt;br /&gt;c3 = ComplexPlus ( c1 , c2);&lt;br /&gt;Console.Write("The result complex number: ");&lt;br /&gt;ComplexWrite(c3);&lt;br /&gt;}&lt;br /&gt;public static void ComplexRead(out Complex c)&lt;br /&gt;{&lt;br /&gt;Console.Write("Real:");&lt;br /&gt;c.real = Convert.ToDouble(Console.ReadLine());&lt;br /&gt;Console.Write("img(image):");&lt;br /&gt;c.img = Convert.ToDouble(Console.ReadLine());&lt;br /&gt;}&lt;br /&gt;public static void ComplexPlus(out Complex c1 , out Complex c2)&lt;br /&gt;{&lt;br /&gt;Complex c3;&lt;br /&gt;c3.real = c1.real + c2.real;&lt;br /&gt;c3.img= c1.img + c2.img;&lt;br /&gt;return c3;&lt;br /&gt;}&lt;br /&gt;public static void ComplexWrite(out Complex c)&lt;br /&gt;{&lt;br /&gt;char sign;&lt;br /&gt;&lt;div style="text-align: left;"&gt;sign =&lt;span style="color: rgb(255, 0, 0);"&gt; (c.img&gt; 0) ? '+' : '-';&lt;/span&gt;&lt;br /&gt;Console.WriteLine("{0} {1} {2}i",c.real,sign,Math.Abs(c.img));&lt;br /&gt;&lt;/div&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;div dir="ltr" style="text-align: right;"&gt;قسمت هایی که قرمز شده احتیاج به توضیح داشت که توی پیوست و پست بعدی توضیحاتش رو نوشتم!&lt;br /&gt;&lt;a style="color: rgb(0, 153, 0);" href="http://csharpkelas.blogspot.com/2009/08/blog-post_06.html"&gt;پیوست&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" class="flockcredit" style="text-align: right; color: rgb(204, 204, 204); font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-4898381026264836133?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/4898381026264836133/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/struct.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/4898381026264836133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/4898381026264836133'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/struct.html' title='تایپ struct'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-7509207130763394002</id><published>2009-08-05T16:32:00.005+04:30</published><updated>2009-08-05T16:46:05.776+04:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='شیگرا'/><title type='text'>مفهموم شی گرا</title><content type='html'>خب می خوایم مفهموم شی گرا رو بررسی کنیم!&lt;br /&gt;&lt;br /&gt;با یه مثال شروع می کنم!&lt;br /&gt;&lt;br /&gt;ما یه نقشه داریم که توش نقشه یک آشپزخونه هست&lt;br /&gt;&lt;br /&gt;حالا ما می خوایم غذا درست کنیم&lt;br /&gt;&lt;br /&gt;برای غذا درست کردن قطعاً نمی تونیم از آشپزخونه ای که تو نقشه هست استفاده کنیم! باید یک نمونه از روی نقشه آشپرخونه بسازیم تا بتونیم توی اون آشپرخونه غذا درست کنیم!&lt;br /&gt;&lt;br /&gt;پس ما یک شی داریم به اسم آشپزخونه و برای استفاده از اون باید یک شی بسازیم از روی آشپزخونه&lt;br /&gt;&lt;br /&gt;یعنی این که نقشه آشپزخونه مفهوم و ویژگی های آشپزخونه هست! ولی برای ساختن آشپزخونه باید یک شی از روی آشپزخونه بسازیم&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;یا مثلاً می گیم که هرچیزی که ارتفاعش بیشتر از یک متر باشه و 4تا پایه هم داشته باشه مثلاً میزه این مفهوم و ویژگی شی میزه! حالا واسه این که یک میز داشته باشیم باید با استفاده از مفاهیم شی میز یک میز بسازیم!&lt;br /&gt;&lt;br /&gt;ما در برنامه نویسی شی گرا اول شئی رو که می خوایم ازش استفاده بکنیم رو ویژگی هاش رو می گیم و بعد ازش استفاده می کنیم!&lt;br /&gt;&lt;br /&gt;مثلاٌ ما تو یه برنامه احتیاج داریم که اسم طرف رو بگیریم و سن طرف رو!&lt;br /&gt;برای این کار می گیم که یک شی تعریف می کنیم به اسم مشخصات!&lt;br /&gt;&lt;br /&gt;می گیم شی مشخصات شامل اسم طرف و سن طرف هست!&lt;br /&gt;&lt;br /&gt;و هروقت که بخوایم اسم و سن طرف رو بگیریم! میگیم یک شی مشخصات بساز که خودش خود به خود شامل اسم و سن طرف هست!&lt;br /&gt;&lt;br /&gt;موفق باشی!&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.unlekker.net/proj/object01/01-SphArc-cand08-02.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 191px; height: 139px;" src="http://www.unlekker.net/proj/object01/01-SphArc-cand08-02.jpg" alt="شی گرا" border="0" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;div class="flockcredit" style="text-align: right; color: rgb(204, 204, 204); font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-7509207130763394002?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/7509207130763394002/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/blog-post.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/7509207130763394002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/7509207130763394002'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/08/blog-post.html' title='مفهموم شی گرا'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-6201914124017537547</id><published>2009-05-09T09:25:00.005+04:30</published><updated>2009-08-05T16:36:43.722+04:30</updated><title type='text'>void</title><content type='html'>البته توابعی هم هستن که هیچ مقداری رو بر نمی گردونن!&lt;br /&gt;&lt;div style="text-align: right;"&gt;که باید void باشن&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;مثلاً&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;public static &lt;span style="color: rgb(255, 0, 0);"&gt;void&lt;/span&gt; Sort(int []a)&lt;br /&gt;{&lt;br /&gt;     int temp;&lt;br /&gt;     for(int i = 1 ; i &amp;lt; i.Length ; i++)&lt;br /&gt;          for(int j = 0 ; j &amp;lt; a.Length-i ; i++)&lt;br /&gt;               if ( a[j] &amp;gt; a[j+1] )&lt;br /&gt;               {&lt;br /&gt;                  temp = a[j];&lt;br /&gt;                  a[j+1] = a[j];&lt;br /&gt;                  a[j+1] = temp;&lt;br /&gt;&lt;/div&gt;&lt;div dir="ltr" style="text-align: left;"&gt;                  }&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;فعلاً تمام توابع رو&lt;br /&gt;public , static&lt;br /&gt;در نظر می گیریم تا بعداً سر فرصت بگم که چی هستن و چی کار می کنن که بتونیم تغییرشون بدیم!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" class="flockcredit" style="text-align: right; color: rgb(204, 204, 204); font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-6201914124017537547?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/6201914124017537547/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/05/untitled.html#comment-form' title='1 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/6201914124017537547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/6201914124017537547'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/05/untitled.html' title='void'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-896789029304683437</id><published>2009-05-09T09:12:00.002+04:30</published><updated>2009-05-09T09:17:18.647+04:30</updated><title type='text'>توابع method</title><content type='html'>سلام!&lt;br /&gt;امروز می خوام توابع رو بگم!&lt;br /&gt;&lt;br /&gt;توابع باید یه سطح دسترسی داشته باشن و یه مقداری رو برگردونن اگه یه اسم داشته باشن...متغیر هایی رو که می خوایم بهشون پاس بدیم رو باید تعریف کنیم&lt;br /&gt;&lt;br /&gt;مثلاً Search تو بخش قبلی به این صورت در میاد تابعش!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_7h_7eSd6N4E/SgUJ2DTRTtI/AAAAAAAAAKQ/iDXd7U1_srg/s1600-h/Csharpkelas9.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_7h_7eSd6N4E/SgUJ2DTRTtI/AAAAAAAAAKQ/iDXd7U1_srg/s320/Csharpkelas9.jpg" alt="" id="BLOGGER_PHOTO_ID_5333680157893938898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;حالا وقتی که می خوایم به یه برنامه متصلش کنیم این طوری متصل می کنیم!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_7h_7eSd6N4E/SgUJ-EJ94DI/AAAAAAAAAKY/0SwCS-88MPw/s1600-h/Csharpkelas10.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_7h_7eSd6N4E/SgUJ-EJ94DI/AAAAAAAAAKY/0SwCS-88MPw/s320/Csharpkelas10.jpg" alt="" id="BLOGGER_PHOTO_ID_5333680295562305586" border="0" /&gt;&lt;/a&gt;البته این روش خیلی ابتدایی...در روش های پیشرفته ما تو یک کلاس توابع رو تعریف می کنیم و استفاده می کنیم و و تو سطوح بالاترش با dll ها این کار رو می کنیم!&lt;br /&gt;&lt;br /&gt;یه چیز دیگه هم این که...حجم برنامه ها داره زیاد میشه...دیگه به صورت عکس نمی تونم بذارمشون...با google doc احتمالاً نشون میدم!&lt;br /&gt;&lt;br /&gt;موفق باشی!&lt;br /&gt;&lt;br /&gt;&lt;div class="flockcredit" style="text-align: right; color: rgb(204, 204, 204); font-size: x-small;"&gt;Blogged with the &lt;a href="http://www.flock.com/blogged-with-flock" style="color: rgb(153, 153, 153); font-weight: bold;" target="_new" title="Flock Browser"&gt;Flock Browser&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-896789029304683437?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/896789029304683437/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/05/method.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/896789029304683437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/896789029304683437'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/05/method.html' title='توابع method'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_7h_7eSd6N4E/SgUJ2DTRTtI/AAAAAAAAAKQ/iDXd7U1_srg/s72-c/Csharpkelas9.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-78587228254675315</id><published>2009-05-07T20:11:00.013+04:30</published><updated>2009-05-09T01:27:48.163+04:30</updated><title type='text'>Array آرایه</title><content type='html'>&lt;div dir="rtl" style="text-align: right;"&gt;سلام!&lt;br /&gt;&lt;br /&gt;دیر شد یکم! شرمنده!&lt;br /&gt;&lt;br /&gt;آرایه یه مجموعه از یک نوع متغییره!&lt;br /&gt;&lt;br /&gt;مثلاً آرایه ای از Int ها , یا تو بحث هایه بالاتر مثلاً یه آرایه از ماشین ها و غیره...!&lt;br /&gt;&lt;br /&gt;آرایه ها رو این طوری تعریف می کنیم!&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;int [] a = new int [n];&lt;br /&gt;&lt;div dir="rtl" style="text-align: right;"&gt;حالا n چیه؟!&lt;br /&gt;وقتی داری یک آرایه رو می سازی باید بگی که چندتا چیز از اون نوع می خوای داشته باشی؟!&lt;br /&gt;n رو می تونی با همون روش قبلی از کاربر دریافت کنی یا این که یه عدد بدی بهش مثلاً&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;int[] a = new int [7];&lt;br /&gt;&lt;div dir="rtl" style="text-align: right;"&gt;حالا چه جوری مقدار دهی کنیم آرایه ها رو؟&lt;br /&gt;&lt;div style="text-align: right;"&gt;چگانه؟ اینگانه: حالت ابتدایی این طوریه:&lt;div style="text-align: right;"&gt;آهان قبلش یه چیزی...شماره خونه آرایه ها از صفر شروع میشه! این عکس رو نگاه کن(طبق معمول اگه کلیک کنی بزرگ میشه!)&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_7h_7eSd6N4E/SgMHIcHSG8I/AAAAAAAAAJY/Ql9nzLj_shM/s1600-h/Csharpimg1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 136px;" src="http://1.bp.blogspot.com/_7h_7eSd6N4E/SgMHIcHSG8I/AAAAAAAAAJY/Ql9nzLj_shM/s320/Csharpimg1.jpg" alt="" id="BLOGGER_PHOTO_ID_5333114225303886786" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: right;"&gt;حالا مقدار دهیش هم این طوریه:&lt;div dir="ltr" style="text-align: left;"&gt;a [0] = 12;&lt;br /&gt;a [1] = 45;&lt;br /&gt;a [2] = 78;&lt;br /&gt;a [3] = 7;&lt;br /&gt;a [4] = 1;&lt;br /&gt;a [5] = 0;&lt;br /&gt;a [6] =4 ;&lt;br /&gt;&lt;div dir="rtl" style="text-align: right;"&gt;روش معمولش اینه:&lt;br /&gt;&lt;div dir="rtl" style="text-align: left;"&gt;&lt;div dir="ltr" style="text-align: left;"&gt;for (int i =0; i &lt; a . Length ; i++ )          &lt;br /&gt;&lt;/div&gt;&lt;a.length;i++) enter="" your="" nums="" a=""&gt;&lt;/a.length;i++)&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;div style="text-align: right;"&gt;2 تا برنامه مفید و کاربردی هست در مورد آرایه ها!&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;sort :&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_7h_7eSd6N4E/SgSWxc_bAKI/AAAAAAAAAKA/HVnASbLBUp4/s1600-h/Csharpkelas7.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://3.bp.blogspot.com/_7h_7eSd6N4E/SgSWxc_bAKI/AAAAAAAAAKA/HVnASbLBUp4/s320/Csharpkelas7.jpg" alt="" id="BLOGGER_PHOTO_ID_5333553635053469858" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;یه قسمتش تو عکس معلوم نیست! اینه:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;Console.WriteLine("Sort : ");&lt;br /&gt;&lt;/div&gt;&lt;div dir="ltr" style="text-align: left;"&gt;for (int i =0; i &lt; a . Length ; i++ )           &lt;br /&gt;Console.Write(" {0}  ",a[i]);&lt;br /&gt; Console.Read(); &lt;/div&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;Search :&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_7h_7eSd6N4E/SgSZXcplqeI/AAAAAAAAAKI/fPcOiKgMve4/s1600-h/Csharpkelas8.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_7h_7eSd6N4E/SgSZXcplqeI/AAAAAAAAAKI/fPcOiKgMve4/s320/Csharpkelas8.jpg" alt="" id="BLOGGER_PHOTO_ID_5333556486820178402" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-78587228254675315?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/78587228254675315/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/05/array.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/78587228254675315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/78587228254675315'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/05/array.html' title='Array آرایه'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_7h_7eSd6N4E/SgMHIcHSG8I/AAAAAAAAAJY/Ql9nzLj_shM/s72-c/Csharpimg1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-8424658175297389580</id><published>2009-04-19T23:53:00.001+04:30</published><updated>2009-04-20T00:16:41.941+04:30</updated><title type='text'>do...while</title><content type='html'>&lt;div dir="rtl" style="text-align: right;"&gt;سلام!&lt;br /&gt;&lt;br /&gt;این هم یکی از حلقه هایه تکراره که کارش مثل while هست!&lt;br /&gt;تفاوتی که داره اینه که یکبار حلقه رو انجام میده...بعد شرط رو بررسی می کنه! این طوری هم هست!:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;do&lt;br /&gt;{&lt;br /&gt;...&lt;br /&gt;}&lt;br /&gt;while(شرط حلقه);&lt;br /&gt;&lt;div dir="rtl" style="text-align: right;"&gt;این مثال انقدر از کاربر عدد می گیره تا کاربر خسته شه بره بخوابه!:D:D:D&lt;br /&gt;این مثال از کاربر عدد می گیره و با هم جمع میکنه تا وقتی که کاربر عدد صفر رو وارد کنه اگه وارد نکنه اتفاق بالا براش میافته!;)&lt;br /&gt;این حلقه تکرار کاربرد هایه محدودی داره...من تاحالا بهشون بر نخوردم!&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_7h_7eSd6N4E/Set_QbNyfMI/AAAAAAAAAIY/_IlJ-WSj47g/s1600-h/Csharpkelas6.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_7h_7eSd6N4E/Set_QbNyfMI/AAAAAAAAAIY/_IlJ-WSj47g/s320/Csharpkelas6.jpg" alt="" id="BLOGGER_PHOTO_ID_5326490904455969986" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-8424658175297389580?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/8424658175297389580/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/04/dowhile.html#comment-form' title='1 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/8424658175297389580'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/8424658175297389580'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/04/dowhile.html' title='do...while'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_7h_7eSd6N4E/Set_QbNyfMI/AAAAAAAAAIY/_IlJ-WSj47g/s72-c/Csharpkelas6.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-6423736823523520936</id><published>2009-04-19T11:23:00.000+04:30</published><updated>2009-04-19T12:12:45.351+04:30</updated><title type='text'>حلقه های تکرار!</title><content type='html'>&lt;div dir="ltr" style="text-align: right;"&gt;حلقه هایه تکرار برایه اینه که یه کاری رو بخوایم چند بار انجام بدیم!&lt;br /&gt;مثل محاسبه فاکتوریل با جمع و ضرب و ... چندین عدد یا خیلی چیز هایه دیگه! که بعداً تو برنامه ها باهاشون کار می کنیم!&lt;br /&gt;حلقه for&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;for(تغییرات روی شمارنده;شرط حلقه;مقدار اویه شمارنده)&lt;br /&gt;{&lt;br /&gt;}&lt;br /&gt;Ex.&lt;br /&gt;for(int i =0;i&lt;10;i++ )&lt;br /&gt;&lt;div style="text-align: right;"&gt;این حلقه برای حالتی به کار میره که تعداد چرخش حلقه رو می دونیم&lt;/div&gt;&lt;br /&gt;&lt;div dir="rtl" style="text-align: right;"&gt;این برنامه n تا عدد رو میگیره و با هم جمع می کنه! &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_7h_7eSd6N4E/SerQDPfrXEI/AAAAAAAAAHw/Jn0FCv1yxFg/s1600-h/Csharpkelas4.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://4.bp.blogspot.com/_7h_7eSd6N4E/SerQDPfrXEI/AAAAAAAAAHw/Jn0FCv1yxFg/s320/Csharpkelas4.jpg" alt="" id="BLOGGER_PHOTO_ID_5326298263436614722" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;حلقه بعد:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;while(شرط حلقه)&lt;br /&gt;{&lt;br /&gt;}&lt;br /&gt;&lt;div style="text-align: right;"&gt;این برنامه تعداد رقم هایه عددی رو که بهش می دی حساب میکنه&lt;br /&gt;یادت باشه ++ یک واحد اضافه می کنه&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_7h_7eSd6N4E/SerVkp98lkI/AAAAAAAAAH4/T09hWlFB7dQ/s1600-h/Csharpkelas5.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://3.bp.blogspot.com/_7h_7eSd6N4E/SerVkp98lkI/AAAAAAAAAH4/T09hWlFB7dQ/s320/Csharpkelas5.jpg" alt="" id="BLOGGER_PHOTO_ID_5326304335036716610" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-6423736823523520936?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/6423736823523520936/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/04/blog-post_18.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/6423736823523520936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/6423736823523520936'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/04/blog-post_18.html' title='حلقه های تکرار!'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_7h_7eSd6N4E/SerQDPfrXEI/AAAAAAAAAHw/Jn0FCv1yxFg/s72-c/Csharpkelas4.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-2039792878113418741</id><published>2009-04-18T23:33:00.000+04:30</published><updated>2009-04-19T11:18:52.168+04:30</updated><title type='text'>if...else</title><content type='html'>امروز می خوام در مورد if و else براتون بگم!&lt;br /&gt;دستور if شرطی رو بررسی می کنه! اگه درست باشه یک دستور رو انجام میده اگر درست نباشه اون شرط دستور دیگه ای رو انجام میده! که دستور دوم تویه else نوشته شده! توجه کن که if هیچ لزومی نداره که بعدش else داشته باشه!&lt;br /&gt;&lt;br /&gt;من این برنامه رو یه بار با if &amp;amp; else نوشتم...یک بار هم با دستور switch case !&lt;br /&gt;&lt;br /&gt;این برنامه اگر عدد 1 رو بهش بدید one می نویسه 2 رو بدید two و 3 رو بدید three و سایر اعداد رو بدید other تحویلت میده!&lt;br /&gt;تو شکل بهتر می تونی ببینی! طبق معمول اگه کلیلک کنی بزرگ میشه!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_7h_7eSd6N4E/SerIA6M5NQI/AAAAAAAAAHY/8GmMAT8siE4/s1600-h/csharpkelas2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_7h_7eSd6N4E/SerIA6M5NQI/AAAAAAAAAHY/8GmMAT8siE4/s320/csharpkelas2.jpg" alt="" id="BLOGGER_PHOTO_ID_5326289427267925250" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_7h_7eSd6N4E/SerIttNuNAI/AAAAAAAAAHg/kgKejrLo5IA/s1600-h/Csharpkelas3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_7h_7eSd6N4E/SerIttNuNAI/AAAAAAAAAHg/kgKejrLo5IA/s320/Csharpkelas3.jpg" alt="" id="BLOGGER_PHOTO_ID_5326290196875850754" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-2039792878113418741?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/2039792878113418741/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/04/ifelse.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/2039792878113418741'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/2039792878113418741'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/04/ifelse.html' title='if...else'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_7h_7eSd6N4E/SerIA6M5NQI/AAAAAAAAAHY/8GmMAT8siE4/s72-c/csharpkelas2.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-636628056178443847</id><published>2009-04-17T12:58:00.000+04:30</published><updated>2009-04-18T16:53:09.616+04:30</updated><title type='text'>مقدمات!</title><content type='html'>&lt;div dir="rtl" style="text-align: right;"&gt;برای شروع کار باید visual studio رو نصب کنی! من پیشنهاد می کنم که CD رو تهیه کنی!&lt;br /&gt;&lt;br /&gt;برای شروع:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;create project =&gt; visual C# =&gt; Console application =&gt; OK&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;اولین کد رو داریم:&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;using system;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;div style="text-align: right;"&gt;یادت باشه که بعد از هر کدی که می نویسی باید یه ; بذاری!&lt;br /&gt;system یک کلاس از پیش تعریف شده هست که یه سری کد رو در اختیار ما قرار میده! با نوشتن عبارت بالا دسترسی ما به اون کدها راحت تر میشه!&lt;div dir="rtl" style="text-align: left;"&gt;namespace Csharpkelas&lt;br /&gt;}&lt;br /&gt;.....&lt;br /&gt;{&lt;br /&gt;&lt;div style="text-align: right;"&gt;namespace اسم پروژه و برنامه ات رو مشخص می کنه! هر چی که خواستی می تونی بذاری!&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;div dir="ltr" style="text-align: left;"&gt;Class program&lt;br /&gt;{&lt;br /&gt;.....&lt;br /&gt;}&lt;div dir="rtl" style="text-align: right;"&gt;Program یه اسمه که می تونی به دلخواه خودت تغییرش بدی...! ولی این اسم استاندارد هست!&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;static void Main()&lt;br /&gt;{&lt;br /&gt;......&lt;br /&gt;}&lt;br /&gt;&lt;div dir="rtl" style="text-align: right;"&gt;این جا کد هایه مربوط به برنامه رو می نویسی! تمام مراحل قبل تشریفاتی بود که قبل از نوشتن هر برنامه باید انجام بشه!(البته فعلاً)&lt;br /&gt;حتماً الان می گی که الان تو Visual studio کد هایی هست که تو وبلاگت نیست! حق با تو هست! اما یه اصلی هست تو برنامه نویسی و اون اینه که چیزی رو که نمی دونیم به چه کاری میاد رو نمی نویسیم! در مورد static void Main هم تو قسمت توابع توضیح می دم!&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: right;"&gt;حالا این رو داریم!&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;using System;&lt;br /&gt;&lt;br /&gt;namespace Csharpkelas&lt;br /&gt;{&lt;br /&gt;          class Program&lt;br /&gt;          {&lt;br /&gt;&lt;div style="text-align: left;"&gt;                          static void Main()&lt;br /&gt;&lt;/div&gt;                         {&lt;br /&gt;                     }&lt;br /&gt;       }&lt;br /&gt;}&lt;br /&gt;&lt;div dir="ltr" style="text-align: right;"&gt;تو C# واسه هر متغیری نوعی تعریف می کنیم...یعنی می گیم که چی نوع داده ای می خواد توش قرار بگیره!&lt;br /&gt;الان از int استفاده می کنیم...هر جا که نوع جدید احتیاج بود توضیحش رو میدم! int فقط اعداد صحیح تا 10 رقمی رو می تونه تو خودش نگه داره!&lt;br /&gt;چند کد مهم:&lt;br /&gt;&lt;div style="text-align: left;"&gt;Console.Write("Csharpkelas") یا Console.WriteLine("Csharpkelas")&lt;br /&gt;&lt;div dir="rtl" style="text-align: right;"&gt;این کد باعث میشه چیزی رو که تو پرانتز نوشتی رو نمایش بده!&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;Console.Read() یا Console.ReadLine()&lt;br /&gt;&lt;div dir="rtl" style="text-align: right;"&gt;از کابر ورودی می خواد!&lt;div dir="ltr" style="text-align: left;"&gt;Convert.ToInt32(Console.Read())&lt;div dir="ltr" style="text-align: right;"&gt;این کد میگه که متغیری که باید از طریق کاربر داده بشه از چه نوعی باید باشه!&lt;br /&gt;&lt;br /&gt;حالا می خوایم یه برنامه بنویسیم که از کاربر 2تا عدد بگیره و با هم جمع کنه!&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;"&gt;using System;&lt;br /&gt;&lt;br /&gt;namespace Csharpkelas&lt;br /&gt;{&lt;br /&gt;         class Program&lt;br /&gt;         {&lt;br /&gt;                      static void Main()&lt;br /&gt;                      {&lt;br /&gt;                                  int adad1 , adad2 ,jam;&lt;br /&gt;                                  Console.WriteLine("2ta adad begoo!");&lt;br /&gt;                                  adad1=Convert.ToInt32(Console.ReadLine());&lt;br /&gt;                                  adad2 = Convert.ToInt32(Console.ReadLine());&lt;br /&gt;                        jam = adad1 + adad2;&lt;br /&gt;                                   Console.WriteLine("{0}+{1}={2}", adad1, adad2, jam);&lt;br /&gt;                                   Console.Read();&lt;br /&gt;                       }&lt;br /&gt;          }&lt;br /&gt;}&lt;br /&gt;&lt;div dir="rtl" style="text-align: right;"&gt;آخرین کد برایه اینه که پنجره ای که برنامه داره توش اجرا میشه و نشون داده میشه بعد از زدن یه دکمه بسته بشه!&lt;br /&gt;کد یکی مونده به آخر رو اگه نفهمیدی تو نظرات بگو!&lt;br /&gt;اگه می خوای تمرین کنی یه برنامه بنویس که 3 تا مقدار بگیره و بزرگترینش رو نشون بده!&lt;br /&gt;متغیر ها هم که adad1 , adad2 تعریف کردم واسه این بود که بفهمی هرچی بخوای می تونی بذاری ولی استاندار از a,b شروع میشه!&lt;br /&gt;توضیحات تو عکس هم می تونه مفید باشه! کلیک کنی بزرگ میشه!&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_7h_7eSd6N4E/SenF_R42gyI/AAAAAAAAAHQ/542RFrHaIEE/s1600-h/Csharpkelas1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://3.bp.blogspot.com/_7h_7eSd6N4E/SenF_R42gyI/AAAAAAAAAHQ/542RFrHaIEE/s320/Csharpkelas1.jpg" alt="" id="BLOGGER_PHOTO_ID_5326005725266608930" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: right;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-636628056178443847?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/636628056178443847/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/04/blog-post.html#comment-form' title='0 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/636628056178443847'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/636628056178443847'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/04/blog-post.html' title='مقدمات!'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_7h_7eSd6N4E/SenF_R42gyI/AAAAAAAAAHQ/542RFrHaIEE/s72-c/Csharpkelas1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6263938190562280613.post-2981617704751476079</id><published>2009-04-16T23:55:00.000+04:30</published><updated>2009-04-17T14:04:31.153+04:30</updated><title type='text'>آموزش  #C</title><content type='html'>&lt;div dir="rtl" style="text-align: right;"&gt;سلام دوست من!&lt;br /&gt;&lt;br /&gt;امیدوارم که تا امروز به خواسته هات رسیده باشی!&lt;br /&gt;&lt;br /&gt;من دانشجوی دانشگاه آزاد تهران جنوب رشته نرم افزارم! و تو درس برنامه نویسی مشکلاتی دارم!&lt;br /&gt;&lt;br /&gt;من برای این که هم خودم یاد بگیرم هم به کسایی که علاقه دارن #C یاد بگیرن کمکی کرده باشم به پیشنهاد یکی از اساتید(استاد مبانی و پایگاه داده ها دانشگاه تهران جنوب دانشکده فنی!) تصمیم گرفتم این وبلاگ رو بسازم!&lt;br /&gt;&lt;br /&gt;به امید روزی که همه از وقتی که داریم به خوبی استفاده کنیم!&lt;br /&gt;&lt;br /&gt;راستی...آدرس وبلاگ رو مسخره نکن...اسم هایه درست و حسابی رو اجازه نمی داد!;)&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6263938190562280613-2981617704751476079?l=csharpkelas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csharpkelas.blogspot.com/feeds/2981617704751476079/comments/default' title='نظرات پيام'/><link rel='replies' type='text/html' href='http://csharpkelas.blogspot.com/2009/04/c.html#comment-form' title='5 نظر'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/2981617704751476079'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6263938190562280613/posts/default/2981617704751476079'/><link rel='alternate' type='text/html' href='http://csharpkelas.blogspot.com/2009/04/c.html' title='آموزش  #C'/><author><name>محمدعلی</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry></feed>
