نمایش نتایج 1 تا 7 از 7

نام تاپیک: ایجاد آرایه ای از یک کلاس

  1. #1
    کاربر دائمی آواتار hossein-khoshseyar
    تاریخ عضویت
    دی 1387
    محل زندگی
    تهران
    پست
    532

    ایجاد آرایه ای از یک کلاس

    دوستان یه سئوال داشتم
    وقتی ما یه آرایه از یک کلاس تعرف می کنیم
    چطور می تونیم همشون رو با هم new کنیم
    آیا راهی غیر از اینکه یدونه یدونه اونا رو new کنی هست؟
    این کد منه؟
    ایا می تونم بدون استفاده از فور توی یه خط همشون رو نیو کنم
    ممنون

    Dim a(10) As Collections.ArrayList
    For n As Integer = 0 To 10
    a(n) = New System.Collections.ArrayList
    Next


  2. #2
    کاربر دائمی آواتار M.KH-SH
    تاریخ عضویت
    مرداد 1390
    محل زندگی
    تهران
    پست
    847

    نقل قول: ایجاد آرایه ای از یک کلاس

    فکر نکنم بشه چون از جز به کل باید با حلقه رفت

  3. #3

    نقل قول: ایجاد آرایه ای از یک کلاس

    تا وقتی شما کلاس دارید هیچ شی خود به خود ایجاد نمیشه و همیشه انتساب بدون new یعنی تغییر اشاره گره و نه ساخت یک نمونه (instance) جدید
    بالاخره شما نیاز به یک حلقه ی for دارید که مقدار داریه ها را تعیین کنید و گذاشتن new در پشت آن زحمتی برای شما ایجاد نمی کند.

    روش استفاده ی شما از آرایه ها هم خیلی کارایی پایینی دارد.
    بهتر است از generic ها استفاده کنید

  4. #4
    کاربر دائمی آواتار ROSTAM2
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    فارس
    پست
    1,646

    نقل قول: ایجاد آرایه ای از یک کلاس

    اگه مي خوايد از يك كلاس خاص يك گروه(ليست) خاص داشته باشيد :


    Dim MyCollection As New List(OF String|Integer|Decimal|Class1|Form1,...)


    For Example:


    Dim MyColl As New List(OF String)
    MyColl.Clear
    MyColl.Add("XXXXX")

    For I = 0 TO MyColl.Count -1
    Msgbox (MyColl(i))
    Next I

  5. #5
    کاربر دائمی آواتار hossein-khoshseyar
    تاریخ عضویت
    دی 1387
    محل زندگی
    تهران
    پست
    532

    نقل قول: ایجاد آرایه ای از یک کلاس

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

    من اصلا این اری لیست رو فقط یه نمونه گفتم
    اصلا هر کلاس دیگه ای که شما بگی
    من سئوالم اینکه چطوری توی یه خط متغرم رو تعریف کرده و یک نیو هم ازش ایجاد کنم تا بتونم توی خط های بعدی ازش استفاده کنم
    یعنی مثلا به جای این خط چی باید بنویسم تا کار کنه ( چون این خط اجرا نمیشه و خطا داره)

    Dim a(10) As Collections.ArrayList = New Collections.ArrayList


  6. #6

    نقل قول: ایجاد آرایه ای از یک کلاس

    دوست من اگر شما نیاز به آرایه ای دارید که درونش شی ذخیره کنید از a(10) استفاده نکنید. خود Arraylist رو استفاده کنید.

    Dim a as new collection.arraylist


    بعد مقدار هر item رو با یک شی جدید پر کنید


    a(0)= new myObj()

  7. #7

    نقل قول: ایجاد آرایه ای از یک کلاس

    یعنی مثلا به جای این خط چی باید بنویسم تا کار کنه ( چون این خط اجرا نمیشه و خطا داره)

    Dim a(10) As Collections.ArrayList = New Collections.ArrayList

    [/QUOTE]

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

تاپیک های مشابه

  1. سوال: طرز ایجاد آرایه ای پویا از یک کلاس
    نوشته شده توسط water_lily_2012 در بخش C#‎‎
    پاسخ: 4
    آخرین پست: دوشنبه 31 مرداد 1390, 11:40 صبح
  2. ایجاد آرایه ای از کلاس
    نوشته شده توسط z_barnamenevis در بخش C#‎‎
    پاسخ: 3
    آخرین پست: پنج شنبه 14 خرداد 1388, 23:10 عصر
  3. ایجاد آرایه دوبعدی به صورت پویا
    نوشته شده توسط mousamk در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 4
    آخرین پست: دوشنبه 06 شهریور 1385, 12:12 عصر
  4. مشکل در کار با آرایه ای از یک کلاس
    نوشته شده توسط Amir Oveisi در بخش C#‎‎
    پاسخ: 6
    آخرین پست: یک شنبه 20 فروردین 1385, 10:26 صبح
  5. پاسخ: 7
    آخرین پست: جمعه 28 بهمن 1384, 10:58 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •