Avatar billede dakinenexus Nybegynder
23. november 2000 - 11:23 Der er 2 kommentarer og
1 løsning

Parameteroverførsel til anden unit.

Hejsa.

Jeg har en spørgsmål der må være mange, der kan svare på.
Jeg ved hvordan man bruger parameteroverførsel fra en procedure til en anden procedure i den samme unit.

Men hvordan overføre man egentlig en parameter fra en procedure i en unit til en procedure i en anden unit?. Jeg har før brugt globale variabler, men det kan ikke være den korrekte måde, at gøre det på.

På forhånd tak
Avatar billede tknudsen Nybegynder
23. november 2000 - 11:56 #1
hvis vi snakker units (som i goe gamle pascal dage) skal du lave funktioner i div units interfaces som get\'er og set\'er data til/fra dine units implementation data.

Følgende henter en TDateTime fra unit1 til unit2:

unit 1

interface
  function getDate : TDateTime

implementation

var
  unit1LocalTime : TDateTime;

function getDate : TDateTime;
begin
  result := unit1LocalTime;
end;


unit 2

interface
uses
  unit1

implementation
var
  unit2LocalTime : TDateTime;

procedure main;
begin
  unit2LovalTime := getTime;
end;
Avatar billede dakinenexus Nybegynder
23. november 2000 - 12:36 #2
Hej TKnudsen.

Først tak for svaret, men hvad nu hvis jeg ikke ønsker at bruge en function. Kan det gøres på anden vis? Jeg mener, hvad nu hvis jeg bare har en integer eller en boolean, som jeg skal bruge i en anden unit. Er jeg så nødt til at oprette en function, der kan kaldes fra den anden unit?
Avatar billede delphi Nybegynder
23. november 2000 - 12:50 #3
Hvis du ikke ønsker at overføre dine data via en funktion, så skal du ha\' direkte adgang til varaiblen - og dermed har du i praksis en global variable.

I ovenstående eksempel vil en variabel der er erklæret i en VAR del i unit 1\'s interface del således kunne ses og bruges af rutinerne i unit 2.  MEN nu er der jo nærmest tale om en \"global\" variabel - ikke helt global, idet den scope er begrænset til unit 1 og alle de units der benytter unit 1.

Delphi
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester