C++ hiba "multiple definiton of Create(tanar,int) first defined here" mit hibázhattam, hogy kéne megírni hogy jó legyen?
Lécci ne írjak class és public programokat, csak typedeffel mert nem értem MÉG a classokat!! Próbáljátok a typedeffel elmagyarázni kérlek mi nem jó...
typedef struct
{
char nev[10];
int ID;
char** szomszed;
int fokszam;
} Tanar;
typedef struct LISTA
{
Tanar tan;
struct LISTA *jobb;
} LISTA;
LISTA* Create (Tanar t, int i)
{
LISTA* l = (LISTA*)(malloc(sizeof(LISTA)));
if (!l) return 0;
l->tan = t;
l->jobb = NULL;
}
void Beszur(LISTA** lista, Tanar t, int i)
{
LISTA* temp = Create(t,i);
if (lista==NULL)
{
*lista = temp;
}
else
{
temp->jobb = *lista;
*lista = temp;
}
}
Tehát a programom addig működött hogy meg vannak a nevek és minden egyéb, annyit szeretnék hogy egy külön listába betegyem az összes tanár típust sorba. Komolyan nem értem mi ez a hibaüzenet, elvileg jó kellene legyen, nem definiáltam többször semmit.
C++ !! Csak C++ ban segitsen aki tudna
LISTA* lista = NULL;
for (i=0; i<n; ++i)
{
Beszur(&lista,t[i],i);
}
ez lenne a main.cpp ben a függvény, de hogy leellenőrizzem odáig még nem jutottam el mivel kiírja ezt a xar hibaüzenetet
Neked van pár problémád. Először is amit írtál program, az C és nem c++. C++-ban new és delete amit használunk, és nem kell typedef, mert a struct automatán a nevén hivatkozható. Ettől függetlenül:
LISTA* Create (Tanar t, int i) ebben a függvényben neked return-ölnöd kéne egy LISTA* típusú változóval. Hol van a return?
igaz igaz. A return l kimaradt a Create fuggveny vegebol.
Akkor hogy kéne leírjam helyesen ezt new és delete-vel? Megpróbálom azzal de én soha nem csináltam úgy... Kérlek.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!