PDA

View Full Version : سوال: خانه های یک آرایه



majid72
شنبه 08 اسفند 1388, 20:04 عصر
دوستان می خواستم بدونم چطوری میشه تعداد خانه های یک رشته را افزایش داد؟:لبخند:

majid72
یک شنبه 09 اسفند 1388, 19:36 عصر
دوستان کسی جواب نمی ده ؟

IamOverlord
یک شنبه 09 اسفند 1388, 19:56 عصر
سلام دوست عزیز!
منظورتون چیه ؟

majid72
یک شنبه 09 اسفند 1388, 20:33 عصر
مثلا من يك همچين چيزي تعريف مي كنم:
Dim n(5) As Byte
من مي خوام براي مواردي بتونم تعداد خانه ها رو بيشتر كنم مثلا 10 تا همين!

lordarma
یک شنبه 09 اسفند 1388, 20:56 عصر
مثلا من يك همچين چيزي تعريف مي كنم:
Dim n(5) As Byte
من مي خوام براي مواردي بتونم تعداد خانه ها رو بيشتر كنم مثلا 10 تا همين!

به نظر من دو راه دارید،
یک اینکه به این شکل تعریف کنید،

n()
یا این

n(i)
که در بالا i با توجه به نیاز شما هر عددی باشد،
و یا اینکه از متغییر دیگری استفاده کنید...
من راه دیگری بلد نیستم.
موفق باشید.

xxxxx_xxxxx
یک شنبه 09 اسفند 1388, 21:45 عصر
سلام،
برای این کار از Redim برای تعریف متغیر استفاده کنید:


ReDim n(5) As Byte
n(1) = 10
n(2) = 20
n(3) = 30
n(4) = 40
n(5) = 50

ReDim n(10) As Byte
n(6) = 60
n(7) = 70
n(8) = 80
n(9) = 90
n(10) = 100
با دستورات بالا، آرایه ای 5 عضوی (بافرض اینکه خانه های آرایه از 1 شروع می شود) ایجاد کرده ایم و هر 5 خانه را مقدار داده ایم. بعد توسط Redim مجدداً همان آرایه را با تعداد خانه های بیشتری تعریف می کنیم. و در نهایت به خانه های جدید آن مقدار میدیم.

نکته ای که در کد فوق وجود داره این هست که بعد این که دوباره آرایه رو با 10 خانه تعریف می کنیم، محتویات قبلی آرایه حذف می شود. برای حفظ محتویات خانه های قبلی، بجای Redim می نویسیم Redim Preserve.

فکر می کنم قبلاً هم در این مورد بحث شده بود!

موفق باشید/

xxxxx_xxxxx
یک شنبه 09 اسفند 1388, 21:50 عصر
لینک تاپیک های مشابه در مورد Redim و Preserve
http://barnamenevis.org/forum/showthread.php?t=172778
http://barnamenevis.org/forum/showthread.php?t=148866

lordarma
یک شنبه 09 اسفند 1388, 21:50 عصر
می شه تفاوت Redim Preserve با حالت معمولی را با یک مثال طرح کنید؟:چشمک::لبخندساده:

اصلاح می کنم:
در لینکی که بالا دادید دیدم،

http://barnamenevis.org/forum/showthread.php?t=172778