Avatar billede twinsen Nybegynder
04. april 2004 - 14:30 Der er 4 kommentarer og
1 løsning

Gensidigt rekursive structs. (mutual recursive)

Jeg ønsker at vide, hvordan jeg overfor c (eller c++) explicit erklærer, at jeg har to gensidigt rekursive datatyper, altså at begge structs indeholder et eksemplar af den anden.

Hvis det var en funktion kunne man prototype sig ud af problemet, men en funktion og en datatype er jo ikke det samme.
Avatar billede arne_v Ekspert
04. april 2004 - 14:32 #1
Hvis struct A indeholder en struct B så kan B ikke indeholde en A.

Fordi så bliver structen uendelig stor.

De kan indeholde en pointer tilhinanden.
Avatar billede arne_v Ekspert
04. april 2004 - 14:32 #2
struct B;

struct A
{
  struct B *b;
};

struct B
{
  struct A *a;
};


vil jeg tro compiler.
Avatar billede arne_v Ekspert
04. april 2004 - 14:33 #3
Jep - det gør den.
Avatar billede twinsen Nybegynder
04. april 2004 - 15:28 #4
yes, det var lige det jeg fiskede efter!

manner det er ikke fedt at være en nar til det her utilgivelige sprog, når man skriver opgave i det... til gengæld er det fedt, at sproget er så hardcore og til benet.

jeg siger tak og smider pointene i din kasse!

- Troels
Avatar billede arne_v Ekspert
04. april 2004 - 15:33 #5
C++ kan godt være et svært sprog at lære.
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