funktion med en struct?

Tags:    c++

Hey alle,

Jeg har lavet en struct som indeholder 3stk strings.
Jeg skal så lave en funktion som indeholder den struct.
- det er i forbindelse med et projekt og jeg har prøvet med et simpelt ekspempel:

#include <conio.h>
#include <iostream>
#include <string>



using namespace std;
struct person{string tekst; string tekst2; string tekst3;} data;
void TEKST(person)
{
cout << "Dette er testkene: " << data.tekst << data.tekst2 << data.tekst3 << endl;
}
int main()
{
TEKST("test1", "test2", "test3");


getch();
return 0;
}

------------------------------------------
Jeg får denne fejl:
error C2660: 'TEKST' : function does not take 3 arguments

Hvordan skal man kalde funktionen TEKST?

Mvh
Malikk



7 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
edit:



Indlæg senest redigeret d. 09.03.2008 23:48 af Bruger #4414
Jeg tror du skal gøre følgende i stedet

Fold kodeboks ind/udKode 


men jeg er langt fra sikker.



Når man erklærer en funktion skal man erklærer hvilke typer/parameter-lister som skal bruges i funktionen.
Den du skriver i funktionen er de variable jeg bruger i min struct.

Funktionen skal formentlig defineres:

void TEKST(person data)

Får dog stadig fejl!



Én måde at gøre det på:
Fold kodeboks ind/udKode 

Bemærk at jeg har fjernet den grimme globale variabel data, og lavet en i main i stedet (Data)
TEKST modtager så en kopi af denne struct som parameter.

I din kode blander du TEKST funktionen sammen med struct'en person



Én måde at gøre det på:
Fold kodeboks ind/udKode 

Bemærk at jeg har fjernet den grimme globale variabel data, og lavet en i main i stedet (Data)
TEKST modtager så en kopi af denne struct som parameter.

I din kode blander du TEKST funktionen sammen med struct'en person


Jeg kan ikke helt forstå hvorfor du har gjordt således med den globale variabel? Er det smartere sådan eller ser det bare bedre ud?



Malik Kleist, en global variabel kan nåes fra alle funktioner, som er inkluderet i programmet. Dette er ikke smart, da man kan ændre i den, og derved påvirke dens indvirken på programmet. Holder du den indenfor main scoopet har du mindsket fejlsatsen i dit program.



Okay, perfekt :) tak for hjælpen og besvarelsen ;)



t