![]() |
Welche Funktion ist schneller?
Welche Art Funktion ist schneller? :gruebel:
Delphi-Quellcode:
Ich würde ja sagen IsEqual2 bin mir damit aber nicht sicher... :zwinker:
Function IsEqual1( Wert1, Wert2: Boolean ): Boolean;
Begin Result := Wert1 = Wert2; End; Function IsEqual2( Wert1, Wert2: Boolean ): Boolean; Begin // Result := Wert1 And Wert2; Result := Not( Wert1 Xor Wert2 ); End; Bye |
Re: Welche Funktion ist schneller?
teste es doch aus....
führ es jeweils 1 millionen mal aus mit zufallswerten zwischen 1 und 100 und mess die zeit.... |
Re: Welche Funktion ist schneller?
Mein Delphi macht aus beiden Funktionen den selben Assembler. Also sind beide gleich schnell.
Edit: \\Ups.. macht er doch nicht. |
Re: Welche Funktion ist schneller?
Dir ist aber schon klar, dass die Funktionen nicht dasselbe machen oder ?
Die erste gibt bei 0, 0 TRUE zurück die zweite FALSE. Um das gleiche zu machen, müsste sie so aussehen:
Delphi-Quellcode:
Function IsEqual1( Wert1, Wert2: Boolean ): Boolean;
Begin Result := not (Wert1 xor Wert2); End; |
Re: Welche Funktion ist schneller?
Man bin ich schusselig jfheins hat Recht, damit müsste dann auch Funktion 1 schneller sein...
Bye |
Re: Welche Funktion ist schneller?
Bei mir ist Funktion 2 anscheinend schneller, allerdings leifert sie nur ungefähr die Hälfte der true-Werte von Funktion 1 zurück :gruebel:
|
Re: Welche Funktion ist schneller?
Zitat:
False And False ergibt false, aber (false = false) ergibt true. Deshalb der einwand von jfheins. |
Re: Welche Funktion ist schneller?
Ich hab ja auch die neue Funktion IsEqual2 genommen, is aber trotzdem so ;-)
//edit Kommando zurück, hab die falsche Funktion in meinem Programm verändert :wall: |
Re: Welche Funktion ist schneller?
Ich denke bei soetwas popeligem ist es unsinnig so ein trarar zu machen
|
Re: Welche Funktion ist schneller?
Zitat:
|
Re: Welche Funktion ist schneller?
hi,
Ja stimmt. ich schätze mal, dass das Springen zur Funktion und zurück viel länger dauert als ein paar so kleine Anweisungen/kleine Anweisung ! cu, stefan2005 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz