Nesne Oluşturma Operatörü new

new operatörü, otomatik olarak uygun büyüklükte bir nesne oluşturur, nesne yıkıcısını çağırır ve oluşturulan nesnenin bir tarifçisine dönüş yapar. Başarısızlık durumunda operatör, NULL sabiti ile karşılaştırılabilecek bir null (boş) açıklayıcıya dönüş yapar.

'new' operatörü sadece sınıf nesnelerine uygulanabilir. Yapılara uygulanamaz.

Nesne dizileri oluşturmak için kullanılamaz. Bunun için ArrayResize() fonksiyonunu kullanınız.

Örnek:

//+------------------------------------------------------------------+
//| Şekil oluşturma                                                    |
//+------------------------------------------------------------------+
void CTetrisField::NewShape()
  {
   m_ypos=HORZ_BORDER;
//--- rassal olarak 7 muhtemel şekil oluştur
   int nshape=rand()%7;
   switch(nshape)
     {
      case 0: m_shape=new CTetrisShape1; break;
      case 1: m_shape=new CTetrisShape2; break;
      case 2: m_shape=new CTetrisShape3; break;
      case 3: m_shape=new CTetrisShape4; break;
      case 4: m_shape=new CTetrisShape5; break;
      case 5: m_shape=new CTetrisShape6; break;
      case 6: m_shape=new CTetrisShape7; break;
     }
//--- çiz
   if(m_shape!=NULL)
     {
      //--- ön ayarlar
      m_shape.SetRightBorder(WIDTH_IN_PIXELS+VERT_BORDER);
      m_shape.SetYPos(m_ypos);
      m_shape.SetXPos(VERT_BORDER+SHAPE_SIZE*8);
      //--- çiz
      m_shape.Draw();
     }
//---
  }

Nesne tarifçisinin bellek adresine yapılan bir işaretçi olmadığı not edilmelidir.

'new' operatörü ile oluşturulmuş bir nesne, delete operatörü ile açıkça silinmelidir.

Ayrıca Bakınız

Değişkenlerin Başlatılması, Değişkenlerin Görünürlük Alanları ve Ömürleri, Nesnelerin Yaratılması ve Silinmesi