PDA

View Full Version : مبتدی: ساختار آرایه دینامیک



juiande
چهارشنبه 10 آذر 1389, 23:32 عصر
با سلام خدمت دوستان عزیز . ازحضور انور دوستان میخواستم بفرمایند که آیا در محیط #C هم مانند محیط پاسکال میشه آرایه دینامیک تعریف کرد یا نه و اگر بله ، به چه شکلی ؟ ارادتمند همه آینده سازان

hadi-z
پنج شنبه 11 آذر 1389, 08:59 صبح
سلام
فکر کنم این کمکت کنه:
http://www.codedigest.com/Articles/CSHARP/257_Declaring_static_and_dynamic_arrays.aspx

flash118
پنج شنبه 11 آذر 1389, 09:21 صبح
با سلام دوست عزیز براتون چند تا نمونه معرفی میکنم نگاهی بندازید فکر کنم برای شروع عالی هشتن
اولین لینک مربوط به سورت کردن لیست های داینامیک هست که اونی که شما هم میخواهید توش هست یه نگاهی مهندسی کنین پیداش میکنید
لینک:http://www.codeproject.com/KB/dotnet/dynamiclistsorting.aspx

2-
Dynamic Three Dimensional Arrays in C\C++\C#\Java

لینک:http://www.codeproject.com/Articles/83080/Dynamic-Three-Dimensional-Arrays-in-C-Cplusplus-Cs.aspx

و در آخر هم اینم راهنمای MSDN که نکات خوبی برای شروع بیان کرده دیدن تایک هاش خالی از لطف نیست
لینک:http://social.msdn.microsoft.com/Search/en-US/?Refinement=126&Query=Dynamic+Array

امیدوارم براتون مفید باشن موفق باشین

محمد متاله
پنج شنبه 11 آذر 1389, 09:40 صبح
فکر کنم با وجود هزاران کلاسی که در #C وجود دارد هیچ چیزی به ذهنمان خطور نکند که دات نت راه حل آسانی برایش در نظر نگرفته باشد
من وقتی آرایه داینامیک می خوام که بتوانم در آن عملیات Add انجام دهم و یا اینکه عنصری را با اندیس مشخصی حذف کنم از ArrayList استفاده می کنم که در فضای با نام System.Collection قرار دارد این کلاس دارای متدهای زیادی است که می توانید از آنها استفاده کنید مسئله بسیار مهم دیگر اینکه داده هایی که در این Data Type می توانید ذخیره کنید از نوع Object می باشد ...
یعنی حتی شما می توانید مثلا کلاسی برای دانشجویان تعریف نمایید که شامل Name Family []Grades Average stdNo IDLessons و غیره باشد و هر بار می توانید آبجکتی را از این کلاس new کرده و پس از پر کردن فیلدهای آن این آبجکت را در آبجکت new شده از کلاس ArraList اضافه ()Add کنید
اگر آبجکت ها از نوع های تعریف شده توسط کاربر مثل کلاس Student باشد متد ()Sortاین Data Type را نمی تواند استفاده کنید چون نمی داند که شما می خواهید داده های ورودی اش را بر چه اساسی مرتب کند برای این کار شما می بایست اینترفیس IComparer را دوباره Over ride کنید و به آن بگویید که داده های درونی اش را چگونه مرتب کند
موفق باشید

csharpprogramer88
پنج شنبه 11 آذر 1389, 13:34 عصر
سلام

آرایه دینامیک را برای چه کاری میخواید شاید استفاده از list ها هم براتون مفید باشه

hassan_kahrizy
جمعه 12 آذر 1389, 10:00 صبح
بسمه تعالی
با سلام
خوب لیست برای همین کاره . از اون استفاده کنید.

kamran00f
جمعه 12 آذر 1389, 14:22 عصر
فکر کنم با وجود هزاران کلاسی که در #C وجود دارد هیچ چیزی به ذهنمان خطور نکند که دات نت راه حل آسانی برایش در نظر نگرفته باشد
من وقتی آرایه داینامیک می خوام که بتوانم در آن عملیات Add انجام دهم و یا اینکه عنصری را با اندیس مشخصی حذف کنم از ArrayList استفاده می کنم که در فضای با نام System.Collection قرار دارد این کلاس دارای متدهای زیادی است که می توانید از آنها استفاده کنید مسئله بسیار مهم دیگر اینکه داده هایی که در این Data Type می توانید ذخیره کنیز از نوع Object می باشد ...
یعنی حتی شما می توانید مثلا کلاسی برای دانشجویان تعریف نمایید که شامل Name Family []Grades Average stdNo IDLessons و غیره باشد و هر بار می توانید آبجکتی را از این کلاس new کرده و پس از پر کردن فیلدهای آن این آبجکت را در آبجکت new شده از کلاس ArraList اضافه (()Add) کنید
اگر آبجکت ها از نوع های تعریف شده توسط کاربر مپل کلاس Student باشد متد ()Sortاین Data Type را نمی تواند استفاده کنید چون نمی داند که شما می خواهید داده های ورودی اش را بر چه اساسی مرتب کند برای این مکار شما می بایست می بایست اینترفیس IComparer را دوباره Over ride کنید و به آن بگویید که داده های درونی اش را چگونه مرتب کند
موفق باشید


تمام این حرف ها درسته. ولی مهمترین خصوصیت ArrayList ها اینه که میشه هر آبجکت از هر نوعی رو توش ریخت. مثلا یه بار یه آبجکت از نوع Student ، یه بار یه int و یه بار یه string و هر چیز دیگه. وگرنه همه ی این کارارو کلاس لیست هم انجام میده ولی فقط برای یه نوع داده خاص که هنگام تعریف کردن لیست مشخص میشه.