Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Decimal och berakningar

Postades av 2008-04-18 15:14:23 - Magnus Bergström, i forum c# (c-sharp), Tråden har 4 Kommentarer och lästs av 1238 personer

Har en liten undran om Decimal i c#.

I klassen finns det statiska metoder inkluderade for berakning: Add, Subtract, Multiply och Divide

Undrar egentligen vad det gor for skillnad gentemot vanliga operatorer?

Ex:
result = Decimal.Add(var1, var2);
vs.
result = var1 + var2;

Gjorde en liten test-app som itererade igenom en massa berakningar pa bada satten och sag att det var ca 0.5 sekunder snabbare for 40 000 000 berakningar att anvanda Decimal-metoderna.

Varfor? Och finns det andra fordelar ocksa?

mvh


Svara

Sv: Decimal och berakningar

Postades av 2008-04-18 21:01:33 - Martin Adrian

+ gör inget annat än anropar add

(kolla med reflector)


Svara

Sv: Decimal och berakningar

Postades av 2008-04-23 08:32:34 - Per Hultqvist

Det kallas för Operator Overloading, och innebär att operatorer som +.-./,*,==,!= o s v kan definieras i en klass. I det här fallet byter kompilatorn ut operatorn + mot ett funktionsanrop till funktionen Add. Du kan alltså göra en Matris-klass och definiera hur operatorn + skall fungera på en Matris.

Skillnaden i tid tror jag nog beror på att din dator var olika upptagen när du mätte. Det borde bli identiskt kod, men som redan sagts, det kan du kolla med Reflector...


Svara

Sv:Decimal och berakningar

Postades av 2008-04-24 17:04:39 - Magnus Bergström

Kollade i reflector och saga att allt operatorn gjorde var att kalla Decimal.Add-metoden. Den extra tiden borde da rimligtvis vara den extra overhead som ett extra metod-anrop ger...


Svara

Sv: Decimal och berakningar

Postades av 2008-04-24 17:48:13 - Martin Adrian

>Den extra tiden borde da rimligtvis vara den extra overhead som ett extra metod-anrop ger...

Möjligtvis i debug läge eller något sådant. I verkligheten kommer JIT kompilatorn att ta bort det extra metodanropet så koden blir identisk.

Att du får en tidskillnad visar bara hur svårt det är mäta skillnader


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 710
27 958
271 751
1 125
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies