الگوی برنامه نویسی شی گرا در همه ابزارها و زبانهای مدرن برای ایجاد نرم افزار رایج است. استاندارد صنعت امروز زبان برنامه نویسی شی گرا C ++ است. شما می توانید به چندین روش مختلف نمونه ای از کلاس را به زبان C ++ ایجاد کنید.
لازم است
کامپایلر C ++
دستورالعمل ها
مرحله 1
کلاس را به عنوان یک متغیر خودکار در دامنه محلی که توسط یک تابع ، روش کلاس یا بلوک دستور تعریف شده است ، نمونه کنید. از تعریف اجباری یا اجباری یک شی کلاس در یک مکان انتخاب شده در برنامه خود استفاده کنید. در صورت لزوم ، با هر سازنده ای که دارای پارامتر است صریحاً تماس بگیرید. با استفاده از کدی مشابه کد زیر یک شی ایجاد کنید: void CMyClass:: SomeMethod () {COtherClass oSomeObject1؛ // ایجاد یک شی با استفاده از سازنده پیش فرض COtherClass oSomeObject2 (1980 ، "Victor V. Vakchturov") ؛ // ایجاد یک شی با استفاده از یک سازنده با پارامترها} حافظه برای اشیا of کلاسهای ایجاد شده به روشی مشابه ، مانند سایر متغیرهای خودکار ، روی پشته تخصیص یافته است. بنابراین ، هنگامی که از محدوده خارج شوید و قاب پشته را بردارید ، جسم از بین می رود (با تماس به مخرب).
گام 2
با استفاده از عملگر جدید یک نمونه از کلاس را در heap ایجاد کنید. یک متغیر از نوع اشاره گر را برای اشیا of کلاس تعریف کنید تا نمونه شوند. به آن مقداری بدهید که نتیجه ارزیابی عملگر جدید باشد. با سازنده مناسب تماس بگیرید. از قطعه کد مشابه موارد زیر استفاده کنید: CSomeClass * poSomeObject؛ // تعریف اشاره گر برای اشیا of کلاس CSomeClasspoSomeObject = new CSomeClass؛ // ایجاد یک شی از کلاس CSomeClass * poSomeObject_2 = CSomeClass جدید (111 ، "3V") ؛ // ایجاد با فراخوانی سازنده با پارامترها هنگام ایجاد اشیا by با این روش ، از مکانیزم تخصیص حافظه تعریف شده توسط اپراتور جدید استفاده می شود (اگر لغو نشود و عملکرد تخصیص اختصاصی آن تنظیم نشده باشد) ، بنابراین آدرس شی جدید از قبل مشخص نیست. تمام اشیا ایجاد شده به این روش باید با استفاده از عملگر حذف صریحاً حذف شوند.
مرحله 3
با استفاده از عملگر جدید یک نمونه از کلاس را در یک حافظه جداگانه ایجاد کنید. از کدی مشابه کد زیر استفاده کنید: void * p0 = malloc (sizeof (CSomeClass))؛ // تخصیص حافظه باطل * p1 = malloc (sizeof (CSomeClass))؛ // تخصیص حافظه جدید (p0) CSomeClass؛ // مقداردهی اولیه شی بر روی حافظه اختصاص داده شده (سازنده پیش فرض) جدید (p1) CSomeClass (111 ، "abc") ؛ // مقدار دهی اولیه اشیا ((سازنده با پارامترها) قبل از تخریب اشیا created ایجاد شده توسط این روش ، باید صریحاً تخریب کننده آنها را فراخوانی کنید: ((CSomeClass *) p0) ->؛ () ؛ ایجاد اشیا in به این روش عمدتا در کلاس های ظرف قالب استفاده می شود کتابخانه های مختلف (مانند STL).