[ Relja A. @ 20.07.2005. 20:31 ] @
Zdravo,
Znam da je verovatno glupo pitanje, ali...

Da bih lakse objasnio dacu prost primer:

main.cpp
Code:

#include "kvadrat.h"
#include <stdio.h>

int main(){
    printf("%d\n",kvadrat(3));
    printf("%d\n",kub(3));
}


kvadrat.h
Code:

int kvadrat(int x){
    return x*x;
}
int kub(int x);


kvadrat.cpp
Code:

#include "kvadrat.h"

int kub(int x){
    return kvadrat(x)*x;
}


Na ovo se linker buni:
multiple definition of `kvadrat(int)'
(inace, koristim najnoviji DevC++, ali cisto sumljam da je u njemu problem).

Malo sam gledao po internetu, i kako shvatam svima je resenje ovo:

kvadrat.h
Code:

#ifndef KVADRAT_H
#define KVADRAT_H
int kvadrat(int x){
    return x*x;
}
#endif

int kub(int x);


Iz nekog razloga, ni to ne radi...
Pomoc?

Hvala
Relja
[ NrmMyth @ 20.07.2005. 22:07 ] @
Jednostavno stavi deklaracije u header, a definicije u .cpp .
[ Relja A. @ 20.07.2005. 22:43 ] @
Ispalo je jos gluplje nego sto sam mislio...
Hvala mnogo - ovo mi je zadavalo glavobolje i ranije, pa sam neznajuci sta da radim pravio nekoliko kopija istih funkcija, sa razlicitim imenom...

Hvala
Relja