'da bir kurucuyla bir nesne nesnesini dinamik olarak bildirme Nesnenin yapıcıya iletilen şeylere ihtiyacı olduğunda bir dizi nesne oluşturmanın mümkün olup olmadığını merak ediyorum.C++
MyClass *myVar;
myVar = new MyClass[num]; // I would like to specify the array size after declaration
int i = 0;
for(i = 0;i < num;i++)
myVar[i] = new MyClass(0,0); // I would also like to populate the array with new objects
umarım bu işe biliyoruz: Böyle bir şey istiyorum
MyClass *myVar;
myVar = new MyClass[num];
ancak yapıcı ilgisi bu sadece çalışır içine geçti. Yapmaya çalıştığım şey mi? Eğer öyleyse, nasıl yaparım?
DÜZENLEME: Dizileri kullanarak nasıl yapılacağını öğrendim. Ben vektörleri ve bu tür kullanmak istiyorsunuz
MyClass **myVar;
myVar = new MyClass *[num];
for(i = 0;i < num;i++)
myVar[0] = new MyClass(0,0);
ama öğretmenim mümkünse temel diziler kullanmaya anlattı: İşte ben yaptım nasıl. Yukarıdaki çözüm aslında öğretmenimin yazdığı bazı kodlardan aldım. Yardımlarınız için hepinize teşekkür ederim!
teşekkür ederiz! Aslında, vektörler yerine dizileri kullanan bir yaklaşım arıyordum çünkü öğretmenim sınıfın yerine dizileri kullanmasını istiyordu. Cevabını buldum. – user972276
@ user972276: Diziler için, varsayılan olmayan yapıcıyı çağırmak istiyorsanız, ilk yaklaşımınız ne yapabiliyordur. Ancak, gelecekte, diziye ihtiyacınız varsa, * ilk * std :: vector' kullanmayı düşünün. Çok güzel özelliği ile harika bir kaptır. – Nawaz