Új hozzászólás Aktív témák
-
hamachi
csendes tag
-
chabeee
aktív tag
válasz
chabeee #2298 üzenetére
közben megvan a hiba. leírom hátha kell valakinek, bár nem hiszem.:
lista(const lista& eredeti): head(new Elem(CAdat())) {
head->prev = head;
head->next = head;
for(lista::iterator i = eredeti.begin(); i != eredeti.end(); i++){
this->beszur(*i);
}
}másoló konstruktor hiánya miatt fagyott ki.
-
WonderCSabo
félisten
válasz
chabeee #2291 üzenetére
Ha jól értelmezem itt az a probléma, hogy const_iteratort kérsz le. Ugye ekkor az iterátor által mutatott érték (itt egy lista) const lesz. Ezen a const listán akarsz hívni egy kiir() műveletet, ami viszont nem konstans. Emiatt nem engedi lefordítani, mivel ha a művelet nem konstans, van ra esély, hogy megváltoztassa a konstans objektumot, ami ugye szabad, hogy megtörténjen.
Két dolgot tehetsz:
- sima iterator-t kérsz el, nem const_iteratort
- const-tá teszed a kiir() muveletet (ez szebb megoldás lenne) -
WonderCSabo
félisten
válasz
chabeee #2106 üzenetére
Ez most komoly? Beraksz egy ekkora projektet ez zipben ilyen általános kérdéssel? Legalább szűkítenéd le, hogy hol keressük.
De rendes vagyok és megnéztem... Eleve nem fordul, egyrészt azért, mert a MenuBuilder* VarazsloFactory::createMenuBuilder() metódusban polimorf módon egy VarazsloMenuBuilder-t akarsz visszaadni, csak ez nem gyereke a MenuBuilder-nek. A másik probléma az, hogy hiányzik a void jatekos::elotortenet() függvény implementációja.
-
-
Jester01
veterán
-
WonderCSabo
félisten
válasz
chabeee #2083 üzenetére
Ehhez én annyit tennék hozzá, hogy gondolom azért térsz vissza az objektummal, mert szeretnéd, hogy láncolva lehessen hívni az operátort. Csak ez úgy nem fog működni, ha tagfüggvényként deklarálod.
Ha tagfényként deklarálod, például így:
class CS {
public:
CS& operator<<(int be);
};Akkor az valójában így fog "megjelenni" fordítás után:
CS & operator<<(int be, CS& cs);
Ezzel még működni fog ez a hívás:
cs << 2;
De ez már nem:
cs << 2 << 3;
Megoldás: ha szeretnéd, hogy láncolni lehessen, globális operátort kell definiálnod, így:
CS & operator<<(CS& cs, int be);
-
-
modder
aktív tag
Ú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!
- Felszállni készülő drón? Nem, nyitott In Win "ház"!
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Kerékpárosok, bringások ide!
- Gaming notebook topik
- Premier előzetesen a Jurassic World Evolution 3
- Óra topik
- Mibe tegyem a megtakarításaimat?
- Samsung Galaxy A54 - türelemjáték
- Samsung Galaxy Tab S11 - tizenegyes
- Kormányok / autós szimulátorok topikja
- További aktív témák...
- Gamer PC-Számítógép! Csere-Beszámítás! Mini PC! I5 10600KF / RTX 3060 12GB/ 16GB DDR4 / 1TB SSD
- Azonnali készpénzes AMD Radeon RX 6000 sorozat videokártya felvásárlás személyesen/csomagküldéssel
- HIBÁTLAN iPhone 14 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3527, 94% Akkumulátor
- Független & karcmentes Xiaomi Redmi Note 10 Pro 6GB RAM / 128GB / Onyx Grey
- Bomba ár! HP Elitebook 8570P - i5-3GEN I 8GB I 500GB I DVDRW I DP I 15,6" HD I W10 I Garancia!
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő