الگوی طراحی visitor Design در c++
ویژگیها:
- الگوی visitor یک الگوی رفتاریست .
- الگوی visitor اجازه میدهد تا ساختار داده ها از الگوریتمهای مورد استفاده جدا در نظر گرفته شوند.
- هردوی ساختار داده ها و الگوریتم ها میتوانند جداگانه مورد توسعه قرار گیرند ، که توسعه و تغییرات را آسان تر میکند.
- ساختار داده ها یک تابع accept دارد که یک شی visitor (الگوریتم ) ورودی میگیرد.
- اشیار الگوریتم یک تابع visit دارند که یک ساختار داده به عنوان ورودی میگیرد.
یک کد مثال ساده از پیاده سازی الگوی visitor :
(کد نسبت به لینک منبع اصلاح شد به دلیل این که کد در لینک اصلی نشت حافظه داشت )