PDA

View Full Version : سوال: کاربرد this



mehdihadeli
دوشنبه 15 شهریور 1389, 23:33 عصر
از this چه استفاده ای میشود و کجاها میشه ازش استفاده کرد

ashe405
دوشنبه 15 شهریور 1389, 23:48 عصر
سلام دوست من
هر کجا خواستی از خود شی استفاده کنی از کلمه this استفاده میکنی

flash118
دوشنبه 15 شهریور 1389, 23:57 عصر
در تكميل سخن بگم كه از this در ارث بري هم ميشه استفاده كرد به عبارت ديگر استفاده از this در برخي از جاها مثال تعريف يك شي بدون ارث بري.همانند فرم اصلي كه ما بايد براي استفاده از متد ها بايد يك شي جديد استفاده كنيم و بعد براش حافظه اختصاص بديم حالا ما ميتونيم بدون استفاده از شي جديد مي تونيم با استفاده از this مشكل رو حل كنيد البته اين مثال ساده براي روشن سازي هست و در مباحث پيشرفته خيلي از كاربرد ها رو تسريع و آسون مي كند

ashe405
سه شنبه 16 شهریور 1389, 00:02 صبح
بطور مثال
میخوایم ببینیم چندتا کلید تو فرممون داریم
البته این قطعه کد از اساتید فرومه


int d = 0;
foreach (Control c in this.Controls)
{
if(c is Button) d++;
}

در سربارگذارها هم استفاده میشه از this

majesticsoft
سه شنبه 16 شهریور 1389, 00:04 صبح
سلام
this یعنی "این".
این یعنی همین فرمی که روش کار می کنی.
هر موقع خواستی رو فرمت تغییری ایجاد کنی می تونی ازش استفاده کنی.
کاربردهای دیگشو راستش نمی دونم.

میلاد قاضی پور
سه شنبه 16 شهریور 1389, 00:48 صبح
دوستان محترم دقت کنن که در اکثر مواردی که عنوان کردن اصلا نوشتن دیس اجباری نیست . برای نمونه میخواید از متدها و پراپرتی های فرمی که توش دارید کد مینویسید استفاده کنید یا بهشون مقداری بدید . در این صورت نوشتن دیس الزامی نیست . اما پس چه استفاده ای میشه ازش کرد . ببینید وقتی بخواید به فرم دیگری یا به متد دیگری مقداری از نوع همین فرم بدید در واقع چاره ای جز استفاده از دیس ندارید. میخواید به فرم دوم بگید که فلان پراپرتی شما با این فرم برابر باشه . نمیتونید به فرم دوم بگید فلان پراپرتی شما برابر فرم 1 ( فرم جاری و همونی که توش بناست از دیس استفاده بشه) باشه . اینطوری کامپایلر خطا میگیره که باید نمونه ای از اون فرم رو ایجاد کنید . اما از طرفی در واقع نیمخواید نمونه ای ایجاد بشه . وقتی نمیونه ای ایجاد بشه یعنی این فرم کلون شده و نمیتونید منظورتونو به فرم دوم برسونید که آقا منظورم از این نمونه ای که ایجاد شده یعنی همین یه وخ نری دنبال یک شی دیگه . در این صورت تنها کاری که میتونید انجام بدید تا به فرم دوم بفهمونید که روی همین فرم در حال اجرا این عمل رو انجام بده یا فلان پراپرتی ات رو برابر این فرم قرار بده استفاده از کلمه کلیدی this هست . این تنها یکی از کاربردهای مهم this هست .