PDA

View Full Version : کلمه کلیدی virtual چیست



barnamenevis300
جمعه 23 تیر 1391, 03:39 صبح
لطفا راجع به virtual در سی شارپ توضیح بدید. منظورم در تعریف توابع هست.

mmd2009
جمعه 23 تیر 1391, 03:59 صبح
با سلام

من قبلا در مورد کلمه کلیدی virtual یک pdf اماده کرده بودم قبلا و گذاشته بودم ولی الان جستجو کردم متوجه شدم پاک شده لینک ، حالا شما میتونید اصل pdf رو اینجا (http://www.4shared.com/get/ThghZBc2/__virtual.html)دانلود بکنید .

موفق باشید

ali_kolahdoozan
جمعه 23 تیر 1391, 05:37 صبح
ما هم حاضریم جواب بدیم . اما دوست سوال کننده عزیز آیا شما جواب مثلا من یا یکی مثل من را به MSDN ترجیح میدهید ؟ .

barnamenevis300
جمعه 23 تیر 1391, 06:44 صبح
ما هم حاضریم جواب بدیم . اما دوست سوال کننده عزیز آیا شما جواب مثلا من یا یکی مثل من را به MSDN ترجیح میدهید ؟ .

بنده قبول دارم بهترین منبع همین هست ولی کار کردن با این سایت من رو آزار میده چون سرو تهش معلوم نیست یا حداقل من بلد نیستم. نه درسترمون طبقه بندی شده مطالب نه فهرست بندی نه چیزی... فقط میتونی سرچ کنی... تازه گرچه زبان در حدی هستم که مطالعه کنم ولی نسبت به فارسی برام خسته کننده تر هست و انرژی بیشتری ازم میگیره.

خواهشن شما اگر دوست داری لطفی کنید و کمکی کنید فرض رو بر این بگیرید که سوال کننده مسیرش رو انتخاب کرده و اگر نیازی بود مسیر و متد مطالعه و تحقیقش رو الان انتخاب کنه راجع به همین تحقیق میکرد تا موضوع مربوطه.
بهترین چیز اینه که اگه شما احساس میکنی جواب به سوال بنده در یک تاپیک نمی گنجه و طولانی هست میتونی همین رو بگی یا اگر هم جواب در حد تاپیک هست سعی کنی جواب رو بدی و دیگه راجع به متد و فلسفه مطالعه با سوال کننده بحث نکنید تا انرژی اش گرفته بشه.

مرتضی تقدمی
جمعه 23 تیر 1391, 09:29 صبح
ما هم حاضریم جواب بدیم . اما دوست سوال کننده عزیز آیا شما جواب مثلا من یا یکی مثل من را به MSDN ترجیح میدهید ؟ .
سلام
اگه قرار به استفاده از MSDN باشه, جواب همه سوالات و مشکلاتی که بچه ها دارن تو MSDN و یا حداقل توی سایتهای خارجی دیگه هم 100 درصد پیدا میشه. خیلی راحت تر هم پیدا میشه. پس باید این سایت برنامه نویس جمع بشه؟!
موفق باشید

barnamenevis300
جمعه 23 تیر 1391, 12:30 عصر
مهمتر از این، اینکه بعضی از عزیزان چونان مسلط بودن به زبان انلگیسی رو بدیهی و از واجبات فرض میکنن که انگار تمامی کسایی که برای کمک به اینجا میان به این زبان مسلط هستن. درسته کسی که تخصصش در زمینه کامپیوتر هست باید زبان انگلیسی رو هم بدونه ولی "متخصص" کامپیوتر و نه "مبتدی" در کامپیوتر باید...
تازه فرض کنیم من انگلیسی بلد باشم اونوقت منطقی تر نیست در فروم های انگلیسی زبان که به مراتب اکتیو تر و حرفه ایی تر از فروم های فارسی هستن رو انتخاب کنم؟

قطعا در یک فروم فارسی زبان پیش فرض باید بر این باشه که مراجعه کننده انگلیسی نمیداند که به اینجا آمده.

tooraj_azizi_1035
جمعه 23 تیر 1391, 15:19 عصر
سلام
کلمه کلیدی virtual وقتی با یکی از اعضای کلاس (فقط method, property, indexer یا event declaration) به کار میره اجازه می ده تا اون عضو در کلاس مشتق شده override بشه یعنی بشه اون رو مجدداً تعریف کرد و بر تعریف قبلی غلبه کرد.


// cs_virtual_keyword.cs
using System;
class TestClass
{
public class Dimensions
{
public const double PI = Math.PI;
protected double x, y;
public Dimensions()
{
}
public Dimensions(double x, double y)
{
this.x = x;
this.y = y;
}

public virtual double Area()
{
return x * y;
}
}

public class Circle : Dimensions
{
public Circle(double r) : base(r, 0)
{
}

public override double Area()
{
return PI * x * x;
}
}

class Sphere : Dimensions
{
public Sphere(double r) : base(r, 0)
{
}

public override double Area()
{
return 4 * PI * x * x;
}
}

class Cylinder : Dimensions
{
public Cylinder(double r, double h) : base(r, h)
{
}

public override double Area()
{
return 2 * PI * x * x + 2 * PI * x * y;
}
}

static void Main()
{
double r = 3.0, h = 5.0;
Dimensions c = new Circle(r);
Dimensions s = new Sphere(r);
Dimensions l = new Cylinder(r, h);
// Display results:
Console.WriteLine("Area of Circle = {0:F2}", c.Area());
Console.WriteLine("Area of Sphere = {0:F2}", s.Area());
Console.WriteLine("Area of Cylinder = {0:F2}", l.Area());
}
}



خروجی:

Area of Circle = 28.27 Area of Sphere = 113.10 Area of Cylinder = 150.80