نمایش نتایج: از شماره 1 تا 6 از مجموع 6
Like Tree6نفر پسندیدند
  • 2 ارسال توسط Codex
  • 3 ارسال توسط Pouya
  • 1 ارسال توسط Hossein

موضوع: کاربرد static

  1. #1
    USTMB Student
    تاریخ عضویت
    2011 November
    محل سکونت
    sari
    سن
    32
    ارسال ها
    38
    تشکر
    196
    تشکر شده 145 بار در 61 پست


    آيا اين پست براي شما سودمند بود؟ بله | خیر

    کاربرد static

    با سلام
    میخواستم بپرسم که کاربرد static کجاهاست؟
    با تشکر

    موضوعات مشابه:

  2. #2
    کاربر عادی
    تاریخ عضویت
    2011 May
    محل سکونت
    تهران
    ارسال ها
    316
    تشکر
    37
    تشکر شده 688 بار در 303 پست
    نوشته های وبلاگ
    39


    آيا اين پست براي شما سودمند بود؟ بله | خیر
    نقل قول نوشته اصلی توسط meysam.mohammadzadeh نمایش پست ها
    با سلام
    میخواستم بپرسم که کاربرد static کجاهاست؟
    با تشکر
    دیتاهایی که تکرار زیادی دارند و خیلی استفاده میشن + تغییر نمی کنند
    مثلاً ریسورس کانکشن وقتی از نوع static گرفته میشه کارایی سیستم فوق العاده میشه

    Meysam.M و Mahshid این را میپسندند
    http://payline.ir

    http://flynet.ir

    the poor people are often the most generous

  3. #3
    بنیانگذار
    تاریخ عضویت
    2010 January
    محل سکونت
    زیر سایه خدا
    سن
    37
    ارسال ها
    1,308
    تشکر
    2,923
    تشکر شده 2,205 بار در 886 پست
    نوشته های وبلاگ
    37


    آيا اين پست براي شما سودمند بود؟ بله | خیر
    نقل قول نوشته اصلی توسط meysam.mohammadzadeh نمایش پست ها
    با سلام
    میخواستم بپرسم که کاربرد static کجاهاست؟
    با تشکر
    محسن عزیز یک نمونش رو گفتن .
    بهتره زمینه کاریتون رو مشخص کنین مثلا تو چه زبانی مد نظرتون هست . تا بهتر راهنمایی بشید

    توکل بخدا
    http://DeepLearning.ir
    اولین و تنها مرجع یادگیری عمیق ایران


    هرکس از ظن خود شد یار من
    از درون من نجست اسرار من




  4. #4
    USTMB Student
    تاریخ عضویت
    2011 November
    محل سکونت
    sari
    سن
    32
    ارسال ها
    38
    تشکر
    196
    تشکر شده 145 بار در 61 پست


    آيا اين پست براي شما سودمند بود؟ بله | خیر
    لطفا اگه میشه یه مثالی چیزی بزنید


  5. #5
    ADMIN
    تاریخ عضویت
    2011 October
    محل سکونت
    گیلان
    سن
    30
    ارسال ها
    136
    تشکر
    814
    تشکر شده 480 بار در 131 پست


    آيا اين پست براي شما سودمند بود؟ بله | خیر
    نقل قول نوشته اصلی توسط meysam.mohammadzadeh نمایش پست ها
    لطفا اگه میشه یه مثالی چیزی بزنید
    مثلا توی c#
    در کلاس Console شما وقتی میخواین چیزی رو تو محیط کنسول پرینت کنین میگین
    Console.WriteLine() ... در حالی که هیچ شی ای از کلاس Console نساخته بودین . پس متد WriteLine یک متد static هست.که همچین امکانی رو به شما میده ...

    یا متد
    کد:
    int P = Math.Sqrt(16);
    که اگه استاتیک نبود باید از اون شئ ساخته میشد

    کد:
    Math Pouya = new Math();
    
                int P = Pouya.Sqrt(16);


    ویرایش توسط Pouya : 19th April 2012 در ساعت 10:23 PM
    Hossein, Meysam.M و NIIT این نویسه را میپسندند.


    ..::Never Trust Someone Who Lies To You , Never Lie To Someone Who Trusts You::..


  6. #6
    بنیانگذار
    تاریخ عضویت
    2010 January
    محل سکونت
    زیر سایه خدا
    سن
    37
    ارسال ها
    1,308
    تشکر
    2,923
    تشکر شده 2,205 بار در 886 پست
    نوشته های وبلاگ
    37


    آيا اين پست براي شما سودمند بود؟ بله | خیر
    نقل قول نوشته اصلی توسط meysam.mohammadzadeh نمایش پست ها
    لطفا اگه میشه یه مثالی چیزی بزنید
    نگفتید برای چه زبانی میخواید اما عموما اینطور هست

    متن پنهان


    -----------
    1.زمانی که بخواید شی ای که تولید میکنید بین تمامی اشیاء دیگه به اشتراک گذاشته بشه
    2.این شی یا متغیر شما در تمام طول اجرا برنامه تون وجود داشته باشه - البته اینم باید بگم الزاما متغییری که در تمام مدت برنامه وجود داشته باشه به معنای این نیست که توسط همه هم قابل دسترسه ! مثلا
         void f()
    {
    static int x = 47;
    }

    متغییر استاتیک x تا زمانی که برنامه در حال اجراست وجود داره ! اما خارج از تابع f قابل دسترس نیست . اینم بگم که متغییرهای استاتیک در زبان سی محدود به فایل هستن یعنی در همون فایلی که تعریف شدن قابل استفاده هستن .

    3.در کلاسها مثلا استفاده از پیشوند static باعث میشه - همونطور که پویا جان اشاره کردن - متغیرها -توابع یا حتی کلاسهایی تولید بشن که برای استفاده از اونها نیازی به نمونه سازی از کلاستون نباشه - به این نوع کلاسها اصطلاحا Utility Class گفته میشه . - توابعی که استاتیک تعریف میشن میتونن از متغیرهای استاتیک فقط استفاده کنن )
    4.زمانی که بخوایید مقدار دهی اولیه به متغییر یا شی تون تنها یک بار صورت بگیره (number of times دارای مقدار 100 خواهد بود بعد از اجرای این حلقه )


    for(int x = 0; x < 10; x++)
    {
    for(int y = 0; y < 10; y++)
    {
    static int number_of_times = 0;
    number_of_times++;
    }
    }


    یا در مثال زیر شما میتونید تعداد نمونه هایی که از یک کلاس ساخته میشه رو بدست بیارید :
    class User
    {
    private:
    int id;
    static int user_Count;

    public:
    static int next_User_Number()
    {
    user_Count++;
    return user_Count;
    }

    user()
    {
    id = user::user_Count++; //یا, id = user.next_User_Number();
    }
    };
    int user::next_id = 0;//در سی++ما در بخش کد بصورت مقابل میاییم متغییر استاتیک رو مقدار دهی میکنیم .

    5.شما بخوایید همیشه آخرین مقدار ارسالی یک تابع رو داشته باشید میتونید از یک متغییر استاتیک استفاده کنید .

    ویرایش توسط Hossein : 25th April 2012 در ساعت 03:45 PM دلیل: ویرایش متن
    Meysam.M این نویسه را میپسندد.
    توکل بخدا
    http://DeepLearning.ir
    اولین و تنها مرجع یادگیری عمیق ایران


    هرکس از ظن خود شد یار من
    از درون من نجست اسرار من




 

 

کاربران برچسب خورده در این موضوع

علاقه مندی ها (Bookmarks)

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

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


Powered by vBulletin
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0
Persian Language By Ustmb.ir
این انجمن کاملا مستقل بوده و هیچ ارتباطی با دانشگاه علوم و فنون مازندران و مسئولان آن ندارد..این انجمن و تمامی محتوای تولید شده در آن توسط دانشجویان فعلی و فارغ التحصیل ادوار گذشته این دانشگاه برای استفاده دانشجویان جدید این دانشگاه و جامعه دانشگاهی کشور فراهم شده است.لطفا برای اطلاعات بیشتر در رابطه با ماهیت انجمن با مدیریت انجمن ارتباط برقرار کنید
ساعت 04:13 PM بر حسب GMT +4 می باشد.