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

نام تاپیک: تفاوت strong pointer با shared pointer و weak pointer چیست و در چه زمانی باید از آنها استفاده کرد؟

  1. #1

    تفاوت strong pointer با shared pointer و weak pointer چیست و در چه زمانی باید از آنها استفاده کرد؟

    سلام به همه.

    من اخیراً بعد از مدت‌ها جاوا نویسی مجدداً به سی پلاس پلاس برگشتم و به این دوری باعث شده با مفهوم پوینتر مشکل پیدا کنم.
    سوال من اینه که تفاوت این سه نوع اشاره‌گر (weak, strong, shared)‌ در چیه و از هرکدوم در چه زمانی باید استفاده کرد. سپاس گذار هستم اگر پاسختون رو با یک مثال شی‌گرا مطرح کنید.

    پیشاپیش ممنون.
    پویا.

  2. #2
    کاربر تازه وارد
    تاریخ عضویت
    تیر 1390
    محل زندگی
    تهران
    پست
    91

    نقل قول: تفاوت strong pointer با shared pointer و weak pointer چیست و در چه زمانی باید از آنها استفا

    :)) یعنی چه حسی بهت گفته که کل جامعه برنامه نویسی اینجان؟! :دی

    در سی پلاس پلاس(core) دو نوع اشاره گر داریم: reference و pointer.
    که فکر می کنم این اون چیزی نیست که تو دنبالشی.

    برنامه نویس ها برای راحتی کار خودشون و درگیر نشدن با مسایل جزئی تری چون مدیریت منابع (heap , new and delete) شروع به تعریف کلاس هایی می کنند که یک نوع نگهدارنده(container) ی pointer هست و درصورت خارج شدن از scope و لازم بودن برگرداندن منابع به سیستم آنها را به سیستم بر می گردانند( destructors - delete )؛ البته با توجه به اینکه این کلاس ها و ساختار ها در فریم ورک های مختلف چون boost و qt و ... می توانند با انواع نام های مختلف وجود داشته باشند.

    برای مثال می تونم به کتابخانه ی boost یا LibstdC++‎ C++‎11 اشاره کنم:

    unique_ptr ( یا strong pointer?!) :
    این نوع ساختار در صورت خارج شدن از scope به صورت خودکار حافظه را به صورت خودکار به سیستم بر می گرداند.

    shared_ptr :
    این نوع ساختار با توجه به تعداد کپی های موجود با روش reference couting و در صورت صفر شدن تعداد کپی های از خود حافظه را بر می گرداند به سیستم.

    اگر واقعا می خوای بدونی که این اشاره گر ها چی هستند و چجوری کار می کنند می تونی از گوگل سوال کنی یا بری به آدرس http://www.boost.org/doc/libs/1_49_0.../smart_ptr.htm و بخونی.

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

  1. پاسخ: 8
    آخرین پست: شنبه 08 بهمن 1390, 09:52 صبح
  2. سوال: چطور می توان از Strong Name برای امنیت پروژه استفاده کرد؟
    نوشته شده توسط Pouyan2010 در بخش C#‎‎
    پاسخ: 0
    آخرین پست: پنج شنبه 28 مهر 1390, 11:10 صبح
  3. مرجع برای linklist,pointer
    نوشته شده توسط AMIR_HOSSEIN1360 در بخش C#‎‎
    پاسخ: 1
    آخرین پست: پنج شنبه 06 فروردین 1383, 11:37 صبح
  4. invalid pointer operation
    نوشته شده توسط (امید) در بخش برنامه نویسی در Delphi
    پاسخ: 2
    آخرین پست: شنبه 25 بهمن 1382, 15:10 عصر
  5. کاربرد pointers
    نوشته شده توسط Farhad.B.S در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 1
    آخرین پست: پنج شنبه 07 فروردین 1382, 23:54 عصر

برچسب های این تاپیک

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

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