VIlket anrop går snabbast?

0 views
Skip to first unread message

Hedvig Kamp

unread,
May 24, 2010, 7:42:17 AM5/24/10
to anart...@googlegroups.com
Hej!

Vi har en klass Blob.

Blob x;
foo1(Blob &b) { ... }
foo2(Blob *b) { ... }

Vilken går snabbast att anropa, foo1 eller foo2?

Tack Jonas Å för tipset. :)

-- Hedda

Erik Jutemar

unread,
May 24, 2010, 9:00:09 AM5/24/10
to anarthesis
Eftersom foo1 tar b som referens medan foo2 tar b som en kopia av
referensen torde väl foo1 gå snabbast? Vild gissning :)
Sen vilket sätt man ska använda när kan man också diskutera...

- Erik

Peter Miscevic

unread,
May 24, 2010, 11:26:49 AM5/24/10
to anart...@googlegroups.com

Båda tar ju en kopia av en pekare...i c går de ju lika snabbt men i c++ går den första snabbare. Hursomhelst är det väl en löjlig optimering...

Peter Miscevic

Tomas Vestelind

unread,
May 24, 2010, 2:14:47 PM5/24/10
to anart...@googlegroups.com
Varför går den första snabbare och varför skulle en optimering vara löjlig? Jag kan inte mycket om C / C++ men skillnaden är att man skickar in en referens och en pekare va? Men om en referens är en const pekare så borde det väl inte ha någon betydelse om inte kompilatorn på något sätt kan utnyttja det för optimering. Men som sagt, har inte mycket koll på det.

Geif answer och fler fina frågor :)

2010/5/24 Peter Miscevic <peter.m...@gmail.com>



--
Quand on veut un mouton, c'est la preuve qu'on existe
Reply all
Reply to author
Forward
0 new messages