سازنده سربار (Constructor Overloading)
اینجا درباره سازنده سربار حرف می زنیم؛ یعنی یک کلاس، چند سازنده مختلف دارد. این کار آزادی می دهد تا شیء را ساده یا سفارشی بسازی. پس کد تکراری کمتر می شود و شروع کار شیء راحت تر می شود.
سازنده سربار یعنی چه؟
در ++C، یک کلاس می تواند چند سازنده داشته باشد. اما تعداد یا نوع پارامترها باید متفاوت باشد تا کامپایلر تشخیص بدهد کدام را اجرا کند.
چرا سازنده سربار مفید است؟
- انعطاف در ساخت اشیاء مختلف.
- تنظیم مقدارهای پیش فرض یا سفارشی.
- کاهش کد تکراری و ساده سازی.
نمونه با دو سازنده
یک سازنده بدون پارامتر، و یکی با دو پارامتر. خروجی نشان می دهد مقدارهای پیش فرض و سفارشی.
class Car {
public:
string brand;
string model;
Car() {
brand = "Unknown";
model = "Unknown";
}
Car(string b, string m) {
brand = b;
model = m;
}
};
int main() {
Car car1;
Car car2("BMW", "X5");
Car car3("Ford", "Mustang");
cout << "Car1: " << car1.brand << " " << car1.model << "\n";
cout << "Car2: " << car2.brand << " " << car2.model << "\n";
cout << "Car3: " << car3.brand << " " << car3.model;
return 0;
}
گام های عملی
- کلاس را تعریف کن.
- یک سازنده بدون پارامتر بساز.
- یک سازنده پارامتری هم اضافه کن.
- چند شیء بساز و چاپ کن.
نکته: تعداد یا نوع پارامترها باید متفاوت باشد. وگرنه کامپایلر گیج می شود.
برای آشنایی پایه ای، به سازنده ها (Constructors) سر بزن. همچنین بعداً سراغ کلاس ها/اشیاء برو.
جمع بندی سریع
- یک کلاس می تواند چند سازنده داشته باشد.
- پارامترها باید متفاوت باشند.
- مقدار پیش فرض بده، یا سفارشی بساز.
- کد تکراری کمتر می شود.