Hirdetés
Új hozzászólás Aktív témák
-
Gyuri16
senior tag
segitseget kernek pointerek vs operator overloading temaban. egy fa adatstrukturat csinalok, ahol minden node-nak lehet valamennyi pointere a gyerekeire. ezt egy vector<Node*> segitsegevel kepzeltem. elore kell lefoglalni a kontruktorban megadott szamu pointernek a tombot (akkor is ha null lesz csak az erteke) es fokozatosan hozzaadni a gyerekeket (tudom, hogy lehet jobban is, azt kesobb csinalom. a feladat osszehasonlitani a kulonbozo megoldasokat). szeretnek a Node osztalynak egy [] operatort, amivel a gyerekekhez pointerekkent lehetne hozzaferni. egyelore mindig referenciakkal csinaltam hasonlot,megmutatom mire jutottam:
class Node {
public:
int sigma;
// Node** child;
vector<Node*>* child;
int value;
Node(int sigma);
~Node();
Node& operator[](const int index);
};
Node& Node::operator[](const int index) {
return *(*child)[index];
}
Node::Node(int sigma): sigma(sigma), value(0) {
/* child = new Node *[sigma];
for (int i = 0; i < sigma; i++) {
child[i] = NULL;
}*/
child = new vector<Node*>(sigma);
}
Node::~Node() {
/* for (int i=0; i < sigma; i++) {
if (child[i] != NULL) {
delete child[i];
}
}
delete [] child;
*/
for (vector<Node*>::iterator it = child->begin(); it < child->end(); ++it) {
delete *it;
}
delete child;
}ami a kommentarokban van, az a regi megoldas tombokkel ami mukodik is jol, olyat szeretnek csak vectorral es operatorral, tehat ami eddig n->child[i ] volt az legyen n[i ] .
ezt az osztalyt kesobb szeretnem igy hasznalni:
Node n = new Node(10);
Node n[0] = new Node(10);
stb..remelem ertheto mi a problema, koszonom elore a segitseget.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Gamer AMD Ryzen 3700X (8 core) / 16GB DDR4 / RX 6700 XT 12GB / 1TB SSD /
- Gamer Ryzen 7 3700x (8core) / 16GB DDR4 / RTX 3070 Ti 8GB/512GB NVME SSD/
- Makulátlan iPhone 16 Pro Max 256GB, fekete titán színben, garisan eladó!
- Gamer Ryzen 5 5600 / 16GB DDR4 / RTX 3060 12GB / 512GB NVME SSD /
- Gamer pc RYZEN 5500/16GB DDR4/RX 7600 8GB/512GB SSD/Új számítógép 3év garanciával
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! Samsung U28E590DS 60Hz 4K TN 1ms monitor garanciával hibátlan működéssel
- Xiaomi Redmi Note 10S 128GB, Kártyafüggetlen, 1 Év Garanciával
- Gamer PC- Számítógép! Csere-Beszámítás! I7 4790K / 16GB DDR3 / RX 5700XT 8GB / 512GB SSD
- Samsung Galaxy A16 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest