Udostępnij za pośrednictwem


Używanie opcji usuwania

Istnieją dwa warianty składni operatora usuwania: jeden dla pojedynczych obiektów, a drugi dla tablic obiektów.Poniższy fragment kodu pokazuje różnice pomiędzy nimi:

// expre_Using_delete.cpp
struct UDType 
{
};

int main()
{
   // Allocate a user-defined object, UDObject, and an object
   //  of type double on the free store using the
   //  new operator.
   UDType *UDObject = new UDType;
   double *dObject = new double;
   // Delete the two objects.
   delete UDObject;
   delete dObject; 
   // Allocate an array of user-defined objects on the
   // free store using the new operator.
   UDType (*UDArr)[7] = new UDType[5][7];
   // Use the array syntax to delete the array of objects.
   delete [] UDArr;
}

Dwa następujące przypadki wytwarzają niezdefiniowane wyniki: używanie formy tablicowej usuwania (delete [ ]) na obiekcie i używanie formy nietablicowej usuwania na tablicy.

Zobacz też

Informacje

Wyrażenia z operatorami jednoargumentowymi