Avatar billede Simon Praktikant
07. april 2004 - 12:56 Der er 4 kommentarer og
1 løsning

makro eller define

Jeg har et c# program, hvor der er en række kodelinier med nogle variabler, som går igen mange gange.

Jeg har ikke lagt dem ned i en funktion, fordi de bliver kaldt af rekursive funktioner.

Men jeg er træt af at se på de samme linier over det hele, og rætte i dem alle stedder. Findes der ikke en smart løsning, hvor man bare definerer dem?
Avatar billede codemon Nybegynder
07. april 2004 - 13:23 #1
Hvad mener du med at variablerne går igen mange gange. Bliver de defineret mange gange / brugt mange gange. Mener du at metoderne, variablerne indgår i, bliver kaldt af rekursive metoder, eller at variablerne bliver brugt af rekursive metoder?

Er de kodelinier du snakker om, meget ens, eller hvad laver de.
Avatar billede Simon Praktikant
07. april 2004 - 13:38 #2
Jeg kan ilustrere det med et eksempel. Funktion() kalder funktion2() som kalder function3(). Som det første i hver funktion skal en variabel(tal) gemmes, fordi hvis funktionen skal returnere false må der ikke være ændret ved variablen.

private int tal;
funktion()
{
  int kopiAfTal = tal;
  if(et eller andet)
  {
      funktion2();
      return true;
  }
  tal = kopi af tal;
  return false;
}

funktion2()
{
  int kopiAfTal = tal;
  if(et eller andet)
  {
      funktion3();
      return true;
  }
  tal = kopi af tal;
  return false;
}

funktion3()
{
  int kopiAfTal = tal;
  if(et eller andet)
  {
      funktion();
      return true;
  }
  tal = kopi af tal;
  return false;
}
Avatar billede Simon Praktikant
07. april 2004 - 13:39 #3
jeg bruger det i en rekursiv parser.
Avatar billede Simon Praktikant
07. april 2004 - 13:40 #4
men jeg er bare træt af at skulle skrive "int kopiAfTal = tal;" og "tal = kopiAfTal;" igen og igen, fordi jeg har nemlig ikke kun én variabel, men mange. og jeg har også mange funktioner.
Avatar billede Simon Praktikant
16. august 2006 - 14:02 #5
lukker
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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