( uid_21365 | 2020. 08. 16., v – 01:17 )

Ez érdekes gondolat és részben igazat adok neked. Mindazonáltal én egyszer merészeltem végigkövetni, miféle (és hány!) konstruktor meg destruktor-hívás történik egy tök egyszerű értékadás során, már nem emlékszem pontosan mi volt a feladat de valami olyasmi hogy a=b+c; szóval valami tényleg hótt egyszerű dolog... épp csak mindegyik elem ami itt betűvel van jelölve, egy-egy objektum...

Mindazonáltal ha struktúrákkal oldottam volna meg a dolgot, tényleg pofonegyszerű és villámgyors lett volna.

Így NEM. Oké, mint felhasználó semmit se vettem észre abból hogy „lassú”. Ugyanakkor azonban elszörnyesztett amikor láttam, hogy ebből a tényleg ELEMI egyszerű izéből lett egy olyan szinte végnélküli függvényhívási kígyó, amikoris legalább egy TUCAT alkalommal lett a stack macerálva, mert ugye a függvényhívás azzal jár hogy visszatérési címet menteget el a rendszer, esetenként paraméterátadás is történik (itt okvetlenül hiszen az objektumok THIS pointerét muszáj átadni), emellett a heap-ban is átmenetileg lefoglal magának területeket hogy ideiglenes objektumokat gyártson, majd azokat felszabadítja, a copy-construktort is meghívja, stb...

És mindezt tök FELESLEGESEN, mert ott van rég a balérték célterülete ahová rögtön is nyugodtan betehetné az eredményt...

Mondom, nem emlékszem már rá pontosan, hány FELESLEGES függvényhívást követett el, de nagyságrendileg úgy körülbelül egy tucatnyit.

Hát EZÉRT lassú a C++ a C nyelvvel összevetve...

Oké, nem mindig. De ha objektumokkal dolgozunk, akkor IGEN. Másrészt, ha NEM objektumokkal dolgozunk benne, akkor meg mi a frász indokolja hogy épp C++ -ban programozzunk és ne sima C -ben, hiszen akkor épp azt az „előnyét” nem használjuk amiért tervezve lett ez a nyelv!

Körülbelül ekkor kezdtem el azon gondolkodni hogy jobb lenne „lefokozni” magamat és a sima C nyelvet használni... Nos, megtettem és nem bántam meg. Elismerem, néha fájt kissé a szívem mert ez-az tényleg elegánsabban mutatott volna a kódban ha maradok a C++ mellett. Mindent összevetve azonban, végülis magasan megérte hogy így döntöttem!