Zniszczenie obiektu.

0

Witam. Stworzyłem obiekt z klasy Card

void funkcja
{
Card a01(//dane);
CardDeck.push_back(a01);
//usuniecie a01
//ponowne utworzenie
}

Chciałbym teraz usunąć obiekt a01 i ponownie go utworzyć poniżej z użyciem konstruktora.

1

Doczytaj o zakresie zmiennych i ich czasie życia.
To wszystko dzieje się automatycznie.

0

To co chcesz zrobić jest teoretycznie możliwe, ale jestem na 100% pewien że nie chcesz tego robić...
Możesz jawnie wywołać destruktor obiektu zaalokowanego na stosie, pod warunkiem że w miejscu zajmowanym przez ten obiekt skonstruujesz nowy obiekt tego samego typu. Pfuj.

Sekcja 3.8.7 standardu C++

To co najprawdopodobniej masz na myśli to taki przypadek:

Card a01(//dane);
CardDeck.push_back(a01);
a01=Card(//nowedane);
CardDeck.push_back(a01);

Oprócz tego co rekomentował Ci @MarekR22 poczytaj o konstruktorze kopiującym i operatorze przypisania.

0

może o coś takiego Ci chodzi? :D

void funkcja
{
   { //tworzysz nowy zasięg:
      Card a01(//dane);
      CardDeck.push_back(a01);
   } //po wyjsciu z tego bloku a01 zostaje zniszczone.

   Card a01;
   CardDeck.push_back(a01);
   //ponowne utworzenie
}
2

O nic nie chodzi, jak napisał @MarekR22 , to jest problem xy ; bez zobaczenia całego kodu i wyjasnienia od OP, o co chodzi, wszelkie dywagacje są bezsensowne

1 użytkowników online, w tym zalogowanych: 0, gości: 1