როგორ ხდება კლასის დაწყება

Სარჩევი:

როგორ ხდება კლასის დაწყება
როგორ ხდება კლასის დაწყება

ვიდეო: როგორ ხდება კლასის დაწყება

ვიდეო: როგორ ხდება კლასის დაწყება
ვიდეო: როგორ მოსწონს რატი დურგლიშვილს თაკო გაჩეჩილაძის მაჭკატები 2024, მაისი
Anonim

ობიექტზე ორიენტირებული პროგრამირების პარადიგმა გავრცელებულია პროგრამული უზრუნველყოფის შექმნის ყველა თანამედროვე ინსტრუმენტსა და ენაში. ინდუსტრიის სტანდარტი დღეს არის ობიექტზე ორიენტირებული პროგრამირების ენა C ++. შეგიძლიათ შექმნათ კლასის ინსტანცია C ++ ფორმატში რამდენიმე სხვადასხვა გზით.

როგორ ხდება კლასის დაწყება
როგორ ხდება კლასის დაწყება

Ეს აუცილებელია

C ++ შემდგენელი

ინსტრუქციები

Ნაბიჯი 1

კლასის ინსტალაცია, როგორც ავტომატური ცვლადი ფუნქციის, კლასის მეთოდის ან დებულების ბლოკის მიერ განსაზღვრულ ლოკალურ მასშტაბში. გამოიყენეთ კლასის ობიექტის დეკლარაციული ან იმპერატიული განმარტება თქვენი პროგრამის შერჩეულ ადგილას. საჭიროების შემთხვევაში, პირდაპირ დარეკეთ პარამეტრების მქონე ნებისმიერ კონსტრუქტორთან. შექმენით ობიექტი შემდეგი კოდის მსგავსი კოდის გამოყენებით: void CMyClass:: SomeMethod () {COtherClass oSomeObject1; // ობიექტის შექმნა ნაგულისხმევი კონსტრუქტორის COtherClass oSomeObject2 გამოყენებით (1980, "Victor V. Vakchturov"); // ობიექტის შექმნა პარამეტრების მქონე კონსტრუქტორის გამოყენებით} მეხსიერება მეხსიერების ანალოგიური გზით, ისევე როგორც ნებისმიერი სხვა ავტომატური ცვლადისთვის, გამოყოფილია სტეკზე. ამიტომ, როდესაც ფარგლებიდან გამოხვალთ და დასტის ჩარჩო ამოიღეთ, ობიექტი განადგურდება (დესტრუქტორთან დარეკვით).

ნაბიჯი 2

შექმენით კლასის ინსტანცია გროვაში ახალი ოპერატორის გამოყენებით. ტიპის მაჩვენებლის ცვლადის განსაზღვრა კლასის ობიექტებზე, რომელთა ინსტალაცია უნდა მოხდეს. მიეცით მას მნიშვნელობა, რომელიც ახალი ოპერატორის შეფასების შედეგია. დარეკეთ შესაბამის კონსტრუქტორზე. გამოიყენეთ კოდის ფრაგმენტი, რომლის მსგავსია შემდეგი: CSomeClass * poSomeObject; // მაჩვენებლის განსაზღვრა CSomeClasspoSomeObject კლასის ობიექტებისთვის = ახალი CSomeClass; // CSomeClass კლასის ობიექტის შექმნა * poSomeObject_2 = new CSomeClass (111, "3V"); // კონსტრუქტორთან ზარი პარამეტრებით ამ მეთოდით ობიექტების შექმნისას გამოიყენება ახალი ოპერატორის მიერ განსაზღვრული მეხსიერების განაწილების მექანიზმი (თუ იგი არ არის გადაფარებული და არ არის მითითებული საკუთარი განაწილების ფუნქცია), ასე რომ მისამართი ახალი ობიექტი წინასწარ ცნობილი არ არის. ამ გზით შექმნილი ყველა ობიექტი მკაფიოდ უნდა წაიშალოს წაშლის ოპერატორის გამოყენებით.

ნაბიჯი 3

შექმენით კლასის ინსტანცია ახალი ოპერატორის გამოყენებით თვითგანაწილებულ მეხსიერების ბლოკზე. გამოიყენეთ შემდეგი კოდის მსგავსი კოდი: void * p0 = malloc (sizeof (CSomeClass)); // მეხსიერების გამოყოფა void * p1 = malloc (sizeof (CSomeClass)); // მეხსიერების გამოყოფა ახალი (p0) CSomeClass; // ობიექტის ინიცირება გამოყოფილი მეხსიერებაზე (ნაგულისხმევი კონსტრუქტორი) new (p1) CSomeClass (111, "abc"); // ობიექტის ინიციალიზაცია (კონსტრუქტორი პარამეტრებით) ამ მეთოდით შექმნილი ობიექტების განადგურებამდე მკაფიოდ უნდა დარეკოთ მათ გამანადგურებელზე: ((CSomeClass *) p0) -> ~ (); ამ გზით ობიექტების შექმნა ძირითადად გამოიყენება შაბლონების კონტეინერების კლასებში სხვადასხვა ბიბლიოთეკა (მაგალითად, STL).

გირჩევთ: