PDA

View Full Version : سوال: تفاوت Decimal و decimal !



hadimtn
چهارشنبه 14 مرداد 1394, 16:02 عصر
سلام.
تفاوت Decimal و decimal چیه؟!

133947

معادل اینها تو پایگاه داده چیه؟!

alireza264
چهارشنبه 14 مرداد 1394, 19:32 عصر
سلام
decimal یک value type هستش و Decimal یک Refrence type . تفاوتشون دراین مورد خاص و مورد های مشابه فقط در نحوه آدرس دهی و دسترسی در حافظه به متغیره تعریف شده هستش(توضیحش یه کم مفصله) اما کاربردشون تفاوتی نداره
معادلش هم در پایگاه داده بستگی به نحوه تعریف داره. چون این نوع داده میتونه انواع نوع های عددی ازآرایه از بیت ها گرفته تا بایت و double رو پشتیبانی کنه

مهرداد صفا
چهارشنبه 14 مرداد 1394, 21:02 عصر
سلام.
تفاوت Decimal و decimal چیه؟!

سلام.
همون حرف اولشون!!
در واقع تفاوتی با هم ندارند و هر دو یکی هستند. و فقط decimal(with lower case initial) یک alias برای System.Decimal هست و هر دو Value type هستند.
زبان C#‎‎‎‎‎‎‎‎‎ به عنوان یک زبان برنامه نویسی طبیعتا باید از انواع داده ای پایه پشتیبانی کند و مثلا چون از خانواده C هست باید نوع float رو هم پشتیبانی کند. این در حالیست که ما در کتابخانه .Net نوع Float رو نداریم پس float به System.Singleباید map بشه. در مورد long هم معادل Int64 رو در .Net داریم ولی در مورد decimal، نام های استفاده شده در زبان C#‎‎‎‎‎‎‎‎‎ و .Net مشابه هستند.
حالا اگر قبول ندارید می تونید از خود C#‎‎‎‎‎‎‎‎‎ بپرسید:

int a = 10;
MessageBox.Show(a.GetType().ToString());
long c = 0;
MessageBox.Show(c.GetType().ToString());//System.Int64
decimal b = 0;
MessageBox.Show(b.GetType().ToString());//System.Decimal
MessageBox.Show((typeof(decimal) == typeof(System.Decimal)).ToString());//true

برای توضحات بیشتر لینک زیر رو ببینید.
https://msdn.microsoft.com/en-us/library/ya5y69ds%28v=vs.110%29.aspx