Vinnaren i pepparkakshustävlingen!
  • 3
  • 4
2017-08-30, 16:37
  #37
Medlem
Dåligt test av vilket som generar bäst kod, C++-kompilatorn eller .NET jittern. Ingen ide att nämna det som redan sagts, men ett har genierna missat, att C++-programmet startar på direkten medans C#-programmet måste jittas, och även att dess runtime måste startas innan någon kod ens körs.
Citera
2018-04-28, 18:25
  #38
Medlem
Annonvengers avatar
++i istället för i++

i++ skapar en temp variabel
Citera
2018-04-29, 09:16
  #39
Medlem
Mer om skillnaden mellan C++ och C#:
https://benchmarksgame-team.pages.de...pcore-gpp.html

C# kräver betydligt mera minne men det är ju billigt idag.
Citera
2018-05-02, 12:39
  #40
Medlem
kaks avatar
Citat:
Ursprungligen postat av Annonvenger
++i istället för i++

i++ skapar en temp variabel
Nja, ingen kompilator skulle göra det ens i ett ooptimerat debugbygge nuförtiden.
Åtminstone så länge i inte är av en egendefinierad typ med operator++ överlagrad.
Citera
2018-05-02, 17:50
  #41
Moderator
RostigHinks avatar
Citat:
Ursprungligen postat av Annonvenger
++i istället för i++

i++ skapar en temp variabel
++i är mer av en konvention i c++.

i++:
ladda i i register, använd i i beräkning, inkrementera i, spara i.

++i:
ladda i i register, inkrementera i, använd nya i i beräkning, spara i.

Ingen direkt skillnad. Någon temp behövs normalt inte.
Citera
2018-05-13, 13:45
  #42
Medlem
Annonvengers avatar
Citat:
Ursprungligen postat av RostigHink
++i är mer av en konvention i c++.

i++:
ladda i i register, använd i i beräkning, inkrementera i, spara i.

++i:
ladda i i register, inkrementera i, använd nya i i beräkning, spara i.

Ingen direkt skillnad. Någon temp behövs normalt inte.

Kompilatorer gör om i++ till ++i om man endast avänder den som en räknare. Lika bra att koda rätt från början i ett lågnivåspråk och inte förlita sig på kompilatorn.

Hur kan du avända den i en beräkning och sen öka värdet? Har du en callback, en referens eller vilken magi använder du för att veta när du ska öka den?

Integer oldValue = *this;
++(*this);
return oldValue

De är vad som händer i optimerade kompilatorer. Som tur är så vet dom flesta att det är ++i du egentligen menar.
Citera
2018-05-30, 21:33
  #43
Medlem
Eaglecoths avatar
Den här tråden skulle man kunna använda som skolboksexempel på varför det är totalt vansinne att använd C++ för allt annat än superspecifika prestandatillämpningar av experter som vet exakt vad de pysslar med. Jösses asså.
Citera
  • 3
  • 4

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback