Ik kijk wel even in mijn C++11 documentation van x aantal euro's...quote:Op vrijdag 3 augustus 2012 19:43 schreef thabit het volgende:
Wat delete precies dealloceert in dit geval is volgens mij niet door de standaard gedefinieerd. Als delete zo geïmplementeerd is dat het free() gebruikt, dan zal die waarschijnlijk de hele array dealloceren, maar dat is dus allemaal implementatie-afhankelijk.
Nee, volgens mij klopt dit niet. Opzich zijn new en delete niet lastig:quote:Op vrijdag 3 augustus 2012 19:11 schreef t4rt4rus het volgende:
[..]
Wat versta je onder verwijderen?
Volgens mij deallocaten delete en delete[] beide een array,
delete callt alleen de destructor van de eerste.
Of denk ik fout?
Hoe ver ben je? Ik heb 1 tm 10 en 12 nu gedaan. Voor 11 moet ik nog uit zien te vogelen hoe je een matrix laadt.quote:Op vrijdag 3 augustus 2012 22:06 schreef t4rt4rus het volgende:
Ik ben nu ook met Project Euler bezig.
In C++ en asm amd64.
Heb 1 en 2 vandaag gedaan.quote:Op zaterdag 4 augustus 2012 00:35 schreef thenxero het volgende:
[..]
Hoe ver ben je? Ik heb 1 tm 10 en 12 nu gedaan. Voor 11 moet ik nog uit zien te vogelen hoe je een matrix laadt.
Doe maar via DMquote:Op zaterdag 4 augustus 2012 00:37 schreef t4rt4rus het volgende:
[..]
Heb 1 en 2 vandaag gedaan.
Wil je mijn oplossing zien?
Nummer 2 is echt nice in asm
Komt dat niet gewoon doordat -9%2 geïnterpreteerd wordt als -(9%2) ?quote:Op zaterdag 4 augustus 2012 17:03 schreef thabit het volgende:
a%b heeft in C hetzelfde teken als a, dus -9 % 2 = -1 en niet 1. Dat is een nogal debiele conventie, het zou alleen van de restklasse van a moeten afhangen, niet van het teken.
Nee, de unaire - heeft prioriteit over %.quote:Op zaterdag 4 augustus 2012 18:43 schreef thenxero het volgende:
[..]
Komt dat niet gewoon doordat -9%2 geïnterpreteerd wordt als -(9%2) ?
Zover ik weet was dit vroeger afhankelijk van de implementatie: C en C++ gaven geen garanties over het teken van het resultaat als een van de argumenten van de modulo-operator negatief was.quote:Op zaterdag 4 augustus 2012 17:03 schreef thabit het volgende:
a%b heeft in C hetzelfde teken als a, dus -9 % 2 = -1 en niet 1. Dat is een nogal debiele conventie, het zou alleen van de restklasse van a moeten afhangen, niet van het teken.
Dit laat zien waarom je wel wilt dat het resultaat negatief is. Immers, je wilt dat (-10/3) * 3 + (-10%3) == -10 en dat geldt alleen als het resultaat van beide negatief is. Maar ga er in oudere C++ versies dus niet zomaar vanuit dat het resultaat werkelijk negatief is: oppassen dus.quote:5.6.4
The binary / operator yields the quotient, and the binary % operator yields the remainder from the division of the first expression by the second. If the second operand of / or % is zero the behavior is undefined. For integral operands the / operator yields the algebraic quotient with any fractional part discarded; if the quotient a/b is representable in the type of the result, (a/b)*b + a%b is equal to a.
Ik verwacht in de praktijk van niet. De compiler optimaliseert hier ongetwijfeld voor: deze zal dezelfde code genereren voor beide statements.quote:Op zaterdag 4 augustus 2012 16:25 schreef thenxero het volgende:
Bedankt, dat wist ik niet. Jouw methode is ongetwijfeld sneller omdat er niet gerekend hoeft te worden.
| 1 2 3 4 5 | 5 / 3 = 1 -5 / 3 = -1 5 % 3 = 2 -5 % 3 = -2 |
Ik heb het even getest door dergelijke expressies miljarden keren uit te voeren. Het blijkt dat de & statement 1.8 keer sneller is dan de % statement, dus er zit wel degelijk verschil in.quote:Op zaterdag 4 augustus 2012 19:05 schreef GS42 het volgende:
[..]
Ik verwacht in de praktijk van niet. De compiler optimaliseert hier ongetwijfeld voor: deze zal dezelfde code genereren voor beide statements.
Heb je optimalisatieflags meegegeven?quote:Op zaterdag 4 augustus 2012 23:57 schreef thenxero het volgende:
[..]
Ik heb het even getest door dergelijke expressies miljarden keren uit te voeren. Het blijkt dat de & statement 1.8 keer sneller is dan de % statement, dus er zit wel degelijk verschil in.
Nee, ik weet niet hoe dat werktquote:Op zondag 5 augustus 2012 00:00 schreef thabit het volgende:
[..]
Heb je optimalisatieflags meegegeven?
| Forum Opties | |
|---|---|
| Forumhop: | |
| Hop naar: | |