Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Bool-Array als Rückgabewert einer Funktion?? (https://www.delphipraxis.net/116448-bool-array-als-rueckgabewert-einer-funktion.html)

cetinbiryoldayim 29. Jun 2008 16:24


Bool-Array als Rückgabewert einer Funktion??
 
Hallo Leute,
ich hätte mal wieder eine Frage an euch :)

Undzwar würde ich gerne folgendes Array zurückgeben:

info: array[0..2] of boolean





Delphi-Quellcode:
function gibArray(): TBoolean;
begin
 info[0] := true;
 info[1] := false;
 info[2] := true;

 result := ???????????????????
end;

DeddyH 29. Jun 2008 16:32

Re: Bool-Array als Rückgabewert einer Funktion??
 
Delphi-Quellcode:
function gibArray(): TInfo;
begin
  Result[0] := true;
  Result[1] := false;
  Result[2] := true;
end;

marabu 29. Jun 2008 16:34

Re: Bool-Array als Rückgabewert einer Funktion??
 
Hallo,

probiere es so:

Delphi-Quellcode:
uses
  Types;

function GibArray(): TBooleanDynArray;
begin
  SetLength(Result, 3);
  Result[0] := True;
  // ...
end;
Grüße vom marabu

mkinzler 29. Jun 2008 16:34

Re: Bool-Array als Rückgabewert einer Funktion??
 
Deklariere dir einen Typ:

Delphi-Quellcode:
TBoolArray = Array of Boolean;

function gibArray(): TBoolArray;

DeddyH 29. Jun 2008 16:35

Re: Bool-Array als Rückgabewert einer Funktion??
 
Ich hatte das falsch verstanden und dachte, TInfo wäre bereits ein Typ.

cetinbiryoldayim 29. Jun 2008 16:39

Re: Bool-Array als Rückgabewert einer Funktion??
 
kommen einige Fehler:

Delphi-Quellcode:
unit Unit1;

interface

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

type
  TBoolArray = Array of Boolean;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  strict private
    neuesArray: array[0..3] of boolean;
  public
    function gibArray(): TBoolArray;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  neuesArray := gibArray();
end;

function TForm1.GibArray(): TBoolArray;
begin
  SetLength(Result, 3);
  Result[0] := True;
  Result[1] := True;
  Result[2] := True;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  showmessage(BoolToStr(neuesArray[0])+' '+BoolToStr(neuesArray[1])+' '+BoolToStr(neuesArray[2]));
end;

end.


Fehler:
[Fehler] Unit1.pas(33): E2010 Inkompatible Typen: 'Array' und 'TBoolArray' --> Zeile 33

mkinzler 29. Jun 2008 16:43

Re: Bool-Array als Rückgabewert einer Funktion??
 
Muss natürlich der selbe Typ sein
Delphi-Quellcode:
neuesArray: TBoolArray;

cetinbiryoldayim 29. Jun 2008 16:45

Re: Bool-Array als Rückgabewert einer Funktion??
 
dann kommen neue Fehler :)

[Fehler] Unit1.pas(33): E2010 Inkompatible Typen: 'Array' und 'TBoolArray'
[Fehler] Unit1.pas(45): E2010 Inkompatible Typen: 'Boolean' und 'TBoolArray'
[Fehler] Unit1.pas(45): E2010 Inkompatible Typen: 'Boolean' und 'TBoolArray'
[Fehler] Unit1.pas(45): E2010 Inkompatible Typen: 'Boolean' und 'TBoolArray'

mkinzler 29. Jun 2008 16:48

Re: Bool-Array als Rückgabewert einer Funktion??
 
Zeig mal den aktuellen Code

cetinbiryoldayim 29. Jun 2008 16:49

Re: Bool-Array als Rückgabewert einer Funktion??
 
Delphi-Quellcode:
unit Unit1;

interface

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

type
  TBoolArray = Array of TBoolArray;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  strict private
    neuesArray: array[0..2] of TBoolArray;
  public
    function gibArray(): TBoolArray;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  neuesArray := gibArray();
end;

function TForm1.GibArray(): TBoolArray;
begin
  Result[0] := True;
  Result[1] := True;
  Result[2] := True;
end;

end.
Fehler:
[Fehler] Unit1.pas(10): E2086 Typ 'TBoolArray' ist nicht vollständig definiert
[Fehler] Unit1.pas(31): E2010 Inkompatible Typen: 'Array' und 'TBoolArray'


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:09 Uhr.
Seite 1 von 2  1 2      

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