Új hozzászólás Aktív témák
-
jattila48
aktív tag
válasz
jattila48 #3186 üzenetére
A másik programomban teljesen hasonló kódra a VS ezt fordította:
auto pimpl=hc.pimpl;
00426AAF mov eax,dword ptr [ebp-1Ch]
00426AB2 mov ecx,dword ptr [eax]
00426AB4 mov dword ptr [ebp-28h],ecx
.
.
.
auto sc=hc.f(1);
00426ABF push 1
00426AC1 lea eax,[ebp-74h]
00426AC4 push eax
00426AC5 mov ecx,dword ptr [ebp-1Ch]
00426AC8 call HandleClass::f (04113CFh)
.
.
.
auto sc2=(pimpl->*hc.mfp)(2);
00426AD7 mov esi,esp
00426AD9 push 2
00426ADB lea eax,[ebp-1D4h]
00426AE1 push eax
00426AE2 mov ecx,dword ptr [ebp-28h]
00426AE5 call dword ptr ds:[42B8A0h]Látható, hogy a mfp-én keresztüli hívás előtt nincs befordítva a "fölösleges" kód. Egyébként a kétfajta hívás kódja teljesen hasonló, csak az első call direkt címzéssel, a második pedig indirekt címzéssel történik. Viszont a második call már közvetlenül a BodyClass f tfv.-ét hívja, vagyis valóban nincs forwarding call overhead (ami egyébként elég jelentős). Fórumokon (pl. StackOverflow) azt olvastam, hogy a pimpl-et nem lehet enélkül megcsinálni. Ezek szerint mégis. Ez azért működik, mert az incomplete type-ok member pointerei is forward deklarálhatók.
Ú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!
- PlayStation 5
- TCL LCD és LED TV-k
- PROHARDVER! feedback: bugok, problémák, ötletek
- Kerékpárosok, bringások ide!
- CNC topik
- One mobilszolgáltatások
- Nothing Phone (3) – tervezett kaotika
- Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
- Macska topik
- Honor Magic7 Pro - kifinomult, költséges képalkotás
- További aktív témák...
- HIBÁTLAN iPhone 15 Pro 128GB Black Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS3499
- Dell Latitude 5420 i7-1185G7 16GB 256GB magyarbill. 1 év garancia
- Bomba ár! Lenovo ThinkPad L13 G3 - i5-1245U I 16GB I 256SSD I 13,3" FHD Touch I NBD Gari!
- Eladó makulátlan Nothing phone 3a 8/128GB / gyári garanciával
- GYÖNYÖRŰ iPhone 12 mini 128GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3328, 94% Akkumulátor
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest