تبلیغات


کار با الگوی singleton در سی پلاس پلاس

سلام دوستان
امیدوارم حال همتون خوب باشه 🙂

قصد دارم الگوی singleton رو به شما آموزش بدم. اول بررسی کنیم که singleton چیه و چه کاربردی داره! گاهی اوقات ما لازم داریم از یک کلاس فقط یک نمونه بسازیم و از ساختن دو یا چند نمونه از class جلوگیری کنیم. اینجاست که الگوی singleton به کار میاد. درواقع این الگو بهمون این اطمینان میده که از ساخته شدن بیشتر از یک شئ جدید از کلاس جلوگیری بشه.

singleton_implementation_-_uml_class_diagram

 

 

 

 

 

 

 

 

شکل فوق: شکل کلاس دیاگرام الگوی singleton

خب بریم سراغ پیاده سازی براساس کلاس دیاگرام. ابتدا یک کلاس ایجاد می کنیم و متغیر ها و متدها و سازنده ها رو می نویسیم، حوزه دسترسی متد سازنده رو خصوصی می کنیم و یک متغیر از نوع خود کلاس ایجاد می کنیم و اشاره گر رو به سمتش هدف میگیریم و میدان دیدشم خصوصی میکنیم  و یک رفتار از نوع خود کلاس همراه با اشاره گره مینوسیم، کلمه کلیدی “static” بیانگر اینه که شما میتونید بدون ساختن نمونه به اون متغیر یا رفتار مورد نظر دسترسی داشته باشیم خوب اینم کد طبق توضیحاتی که دادیم

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

کد کاملش به این صورته

میریم به سراغ تابع main

خوب در قدم اول میریم متغییر که از خود کلاس نوشتیم بصورت عمومی مورد هدف قرار میدم و مقدار آن را Null میذاریم بیرون از تابع Main مینویسیم

حالا وقت نمونه ساختنه در تابع Main

ابتدا یک نمونه که حالت اشار گر به خودش داره مینوسیم و مقدار اون رو برابر متدی که در کلاس singleton وجود داره میذاریم اگه اینکارو انجام ندیم بصورت خودار کامپایلر جلوگیری میکنه و در آخر میتونیم این متغیر به نمونه های جدید بدهیم ولی همشون به یکه نقطه از حافظه دسترسی دارن

خوووووووووووووووووووووووووووب در آخر اینم کدش

در نهایت خروجی برنامه
screenshot


تبلیغات:

نظرتان را برای ما بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *