AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi overload-Fehlermeldung beim Kompilieren (falsche Argumente)
Thema durchsuchen
Ansicht
Themen-Optionen

overload-Fehlermeldung beim Kompilieren (falsche Argumente)

Ein Thema von benst · begonnen am 18. Nov 2007 · letzter Beitrag vom 19. Nov 2007
 
benst

Registriert seit: 20. Jun 2004
155 Beiträge
 
Delphi 5 Standard
 
#1

overload-Fehlermeldung beim Kompilieren (falsche Argumente)

  Alt 18. Nov 2007, 23:26
Moin,

ich möchte etwas mit der FastFourierTransformation machen und bin auf FFT in der Code-Library gestoßen. Jetzt wollte ich diesen Code mal ausprobieren, aber leider bekomme ich ihn nicht kompiliert.
Der Debugger meint immer, es gäbe keine überladene Version von 'DFT', die mit dem Argument aufgerufen werden kann ("Es gibt keine überladene Version von 'DFT', die man mit diesen Argumenten aufrufen kann") - ich bin da aber anderer Meinung .
Ich habe zunächst nur versucht den Code mit Beispiel zu testen.
Ich kann den Fehler nicht finden... und wäre für einen Tipp dankbar. Stehe irgendwie gerade auf dem Schlauch.

Gruß
Ben
P.S.: Win XP, Delphi 5 Standard
P.P.S.: Mir ist klar, dass der Code so noch nichts macht! (Ich möchte ihn ja in meinen Code einbinden, aber ich bekomme ihn noch nicht einmal so kompiliert.)

complex.pas genau wie hier: FFT (obere Teil)

main.pas (genau wie im Beispiel)


Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, complex;

type
  TForm1 = class(TForm)
    Button1: TButton;
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

function GetFrequency(Data: array of Single; SampleRate, SampleIndex,
    Samples: Integer): Integer;
var I, n, max: Integer;
    a: array of Single;
begin
  max := 0;
  if length(Data) - SampleIndex < Samples then
    raise EAccessViolation.Create('Sound index or length out of bounds.');
  setlength(a, Samples);
  for I := 0 to Samples - 1 do
    a[I] := Data[SampleIndex + I];
  dft(a);
  for I := 0 to (n shr 1) - 1 do if a[I] > a[max] then
  begin
    max := I;
  end;
  Result := trunc(SampleRate / Samples * max);
end;

end.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz