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

نام تاپیک: مقایسه داده ها از نوع object

  1. #1

    مقایسه داده ها از نوع object

    سلام من کلاس زیر را نوشته ام اما از من ایراد می گیرد چگونه مشکلم حل می شود


    public class ObjectCompare
    {
    private object one;
    private object two;

    public ObjectCompare(object a,object b){
    this.one =a;
    this.two =b;
    }
    public void compare(){
    if (one>two)
    System.Console.WriteLine("One Is Biger");
    else if (one<two)
    System.Console.WriteLine("Two Is Biger");
    else
    System.Console.WriteLine("Equal");

    }
    }
    VIP=Very Important Person

  2. #2
    کاربر جدید
    تاریخ عضویت
    اسفند 1383
    محل زندگی
    ایران - مشهد
    پست
    25
    سلام

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

    if ((int)one < (int)two)


    اینو بنویس فکر کنم درست بشه :موفق:

  3. #3
    کاربر دائمی آواتار M.GhanaatPisheh
    تاریخ عضویت
    اردیبهشت 1383
    محل زندگی
    ----------
    پست
    1,267
    راجع به LateBinding تحقیق کنید.
    شما زمانی که نوع Object رو تعریف می کنید نوع داده ای که می خواید ذخیره کنید براتون دقیقا مشخص نیست.
    Object زمانی که داده ای بهش انتصاب داده می شه نوعش مشخص می شه.
    به این خاصیت LateBinding گفته می شه.

    زمان مقایسه بین دو Object یا شرکت دادن یه Object توی یه عبارت باید نوعش مشخص بشه
    (بوسیله Type Casting همونجوری که دوستمون توی Post قبلی اشاره کردن)

  4. #4
    کاربر دائمی آواتار Peyman_Ranjbar
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    شیراز
    پست
    608
    از این را فقط می تونی مساوی بودنش رو تحقیق کنی


    if(one.Equal(two))
    System.Console.WriteLine("Equal");
    else
    System.Console.WriteLine("Not Equal");

  5. #5
    کاربر جدید
    تاریخ عضویت
    اسفند 1383
    محل زندگی
    ایران - مشهد
    پست
    25
    سلام

    من کد این دوستمون رو یکم تغییر دادم و به این شکل درش آوردم


    public class ObjectCompare : Form1
    {
    private object one;
    private object two;

    public ObjectCompare(object a,object b)
    {
    this.one =a;
    this.two =b;
    }
    public void compare()
    {
    if ((int)one>(int)two)
    base.Text = "One Is Biger";
    else if ((int)one<(int)two)
    base.Text = "Two Is Biger";
    else
    base.Text = "Equal";

    }
    }


    در داخل کلاس به درستی text فرم عوض میشد ولی وقتی از کلاس خارج میشد باز به شکل اول بر می گشت
    چرا؟

  6. #6
    :flower: به همه
    VIP=Very Important Person

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

  1. پاسخ: 3
    آخرین پست: دوشنبه 20 آبان 1387, 12:00 عصر
  2. Object reference not set to an instance of an object.
    نوشته شده توسط mammad_kami در بخش C#‎‎
    پاسخ: 27
    آخرین پست: سه شنبه 24 مهر 1386, 15:58 عصر
  3. Object reference not set to an instance of an object
    نوشته شده توسط negar_1986 در بخش C#‎‎
    پاسخ: 1
    آخرین پست: دوشنبه 02 مهر 1386, 04:25 صبح
  4. Object reference not set to an instance of an object
    نوشته شده توسط almanden در بخش C#‎‎
    پاسخ: 9
    آخرین پست: سه شنبه 16 مرداد 1386, 19:53 عصر
  5. خطای Object reference not set to an instance of an object
    نوشته شده توسط sunboy در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: چهارشنبه 11 شهریور 1383, 10:50 صبح

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

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