Bir Sınıf Nasıl Başlatılır

İçindekiler:

Bir Sınıf Nasıl Başlatılır
Bir Sınıf Nasıl Başlatılır

Video: Bir Sınıf Nasıl Başlatılır

Video: Bir Sınıf Nasıl Başlatılır
Video: 1 sınıf hece çalışması 2024, Kasım
Anonim

Nesne yönelimli programlama paradigması, yazılım oluşturmak için tüm modern araçlarda ve dillerde yaygındır. Günümüzün endüstri standardı, nesne yönelimli programlama dili C++'dır. C++'da bir sınıfın örneğini birkaç farklı yolla oluşturabilirsiniz.

Bir sınıf nasıl başlatılır
Bir sınıf nasıl başlatılır

Bu gerekli

C++ derleyicisi

Talimatlar

Aşama 1

Bir işlev, sınıf yöntemi veya deyim bloğu tarafından tanımlanan yerel kapsamda sınıfı bir otomatik değişken olarak örnekleyin. Programınızda seçilen bir konumda bir sınıf nesnesinin bildirimsel veya zorunlu tanımını kullanın. Gerekirse, parametrelerle herhangi bir kurucuya açık bir çağrı yapın. Aşağıdakine benzer bir kod kullanarak bir nesne oluşturun: void CMyClass:: SomeMethod () {COtherClass oSomeObject1; // varsayılan kurucu COtherClass oSomeObject2'yi kullanarak bir nesne oluşturun (1980, "Victor V. Vakchturov"); // parametreli bir yapıcı kullanarak bir nesne oluşturma} Diğer otomatik değişkenlerde olduğu gibi benzer şekilde oluşturulan sınıfların nesneleri için bellek, yığında tahsis edilir. Bu nedenle, kapsamdan çıktığınızda ve yığın çerçevesini kaldırdığınızda, nesne yok edilecektir (yıkıcıya bir çağrı ile).

Adım 2

new operatörünü kullanarak öbekte sınıfın bir örneğini oluşturun. Örneklenecek sınıfın nesnelerine işaretçi türünde bir değişken tanımlayın. Yeni operatörü değerlendirmenin sonucu olan bir değer verin. Uygun kurucuyu çağırın. Aşağıdakine benzer bir kod parçacığı kullanın: CSomeClass * poSomeObject; // sınıfının nesnelerine yönelik bir işaretçinin tanımı CSomeClasspoSomeObject = new CSomeClass; // CSomeClass sınıfında bir nesne oluşturun * poSomeObject_2 = new CSomeClass (111, "3V"); // yapıcıya parametrelerle çağrı yaparak oluşturma Bu yöntemle nesneler oluştururken, yeni operatör tarafından tanımlanan bellek ayırma mekanizması kullanılır (geçersiz kılınmamışsa ve kendi ayırma işlevi ayarlanmamışsa), bu nedenle adresin adresi yeni nesne önceden bilinmemektedir. Bu şekilde oluşturulan tüm nesneler, silme operatörü kullanılarak açıkça silinmelidir.

Aşama 3

Kendi kendine ayrılan bir bellek yığınında new operatörünü kullanarak sınıfın bir örneğini oluşturun. Aşağıdakine benzer bir kod kullanın: void * p0 = malloc (sizeof (CSomeClass)); // bellek ayırma void * p1 = malloc (sizeof (CSomeClass)); // bellek ayırma yeni (p0) CSomeClass; // nesneyi ayrılan bellekte başlat (varsayılan kurucu) new (p1) CSomeClass (111, "abc"); // nesne başlatma (parametreli yapıcı) Bu yöntemle oluşturulan nesneleri yok etmeden önce, açıkça yıkıcılarını çağırmalısınız: ((CSomeClass *) p0) -> ~ (); Nesneleri bu şekilde oluşturmak çoğunlukla şablon konteyner sınıflarında kullanılır. çeşitli kütüphaneler (STL gibi).

Önerilen: