Kopírovací konstruktor (deep-copy), destruktor a operátor přiřazení – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Kopírovací konstruktor (deep-copy), destruktor a operátor přiřazení – C / C++ – Fórum – Programujte.comKopírovací konstruktor (deep-copy), destruktor a operátor přiřazení – C / C++ – Fórum – Programujte.com

 

Pepa512
~ Anonymní uživatel
3 příspěvky
2. 1. 2012   #1
-
0
-

Ahoj, mám následující fragment kódu. Potřeboval bych dopsat kopírovací konstruktor (hluboká kopie), destruktor a operátor přiřazení. Ale fakt nějak nevím jak. ( Byl to příklad v písemce a pokoušel sem si to doma napsat, ale fakt to nějak nechápu).

struct NoName{
NoName():pstring(new::std string); i(0),d(0){}
private:
  std::string *pstring;
  int i;
  double d;
};

Nahlásit jako SPAM
IP: 85.71.215.–
KIIV
~ Moderátor
+43
God of flame
2. 1. 2012   #2
-
0
-

copy konstruktor je: NoName(const NoName &data);  

destruktor:  ~NoName();

prirazeni:   NoName & operator= (const NoName & data);

pridat do public sekce a pak definovat co to ma vlastne delat

Nahlásit jako SPAM
IP: 62.168.56.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Pepa512
~ Anonymní uživatel
3 příspěvky
2. 1. 2012   #3
-
0
-

#2 KIIV
No toto jsem ještě schopen napsat, ale nevím jak třeba inicializovat string *pstring v kopírovacím konstruktoru atd...

Nahlásit jako SPAM
IP: 85.71.215.–
KIIV
~ Moderátor
+43
God of flame
2. 1. 2012   #4
-
0
-

pstring = new string(data.pstring); ?

Nahlásit jako SPAM
IP: 94.112.32.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Pepa512
~ Anonymní uživatel
3 příspěvky
2. 1. 2012   #5
-
0
-

a destruktor? delete [] pstring; ?

Nahlásit jako SPAM
IP: 85.71.215.–
KIIV
~ Moderátor
+43
God of flame
2. 1. 2012   #6
-
0
-

#5 Pepa512
new neco[x] =>  delete [] neco

new neco  =>  delete neco

Nahlásit jako SPAM
IP: 94.112.32.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 18 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý