Ĺadny brzuch
Mam projek z dwoma pliczkiam:
program1.cpp:
int prog()
{
return 1;
}
main.cpp:
#include <cstdlib>
#include <iostream>
#include "program1.cpp"
using namespace std;
int main(int argc, char *argv[])
{
return EXIT_SUCCESS;
}
Podczas kompilacji dostaję błąd:
multiple definition of `prog()'
ld returned 1 exit status
first defined here
D:\Programowanie\C++\KursObiektowy_KS-Ekspert\01_KSE_2006_2\Makefile.win [Build Error] [project01.exe] Error 1
Co jest grane?
jak plik main.cpp zmieniłem na taki:
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
prog();
return EXIT_SUCCESS;
}
to dostaję:
D:\Programowanie\C++\KursObiektowy_KS-Ekspert\01_KSE_2006_2\abc.cpp In function `int main(int, char**)':
8 D:\Programowanie\C++\KursObiektowy_KS-Ekspert\01_KSE_2006_2\abc.cpp `prog' undeclared (first use this function)
(Each undeclared identifier is reported only once for each function it appears in.)
D:\Programowanie\C++\KursObiektowy_KS-Ekspert\01_KSE_2006_2\Makefile.win [Build Error] [main.o] Error 1
Eeee..nie mam teraz kompilatora ale zmień nazwę katalogu, tak żeby nie było w niej C++. To raz a dwa to funkcję napisz w .h i wtedy inkluduj i kompiluj. Napisz zy to coś dało. ;)
zrob plik program.h , daj w nim :
int prog();
i includuj go z mian.cpp . ogolnie plikow .cpp sie z regoly nie includuje... -_-
Albo dodaj deklaracje tej funkcji przed funkcją main tj.
int prog();
oki, dzięki, pomogło, działa :)
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
program1.cpp:
int prog()
{
return 1;
}
main.cpp:
#include <cstdlib>
#include <iostream>
#include "program1.cpp"
using namespace std;
int main(int argc, char *argv[])
{
return EXIT_SUCCESS;
}
Podczas kompilacji dostaję błąd:
multiple definition of `prog()'
ld returned 1 exit status
first defined here
D:\Programowanie\C++\KursObiektowy_KS-Ekspert\01_KSE_2006_2\Makefile.win [Build Error] [project01.exe] Error 1
Co jest grane?
jak plik main.cpp zmieniłem na taki:
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
prog();
return EXIT_SUCCESS;
}
to dostaję:
D:\Programowanie\C++\KursObiektowy_KS-Ekspert\01_KSE_2006_2\abc.cpp In function `int main(int, char**)':
8 D:\Programowanie\C++\KursObiektowy_KS-Ekspert\01_KSE_2006_2\abc.cpp `prog' undeclared (first use this function)
(Each undeclared identifier is reported only once for each function it appears in.)
D:\Programowanie\C++\KursObiektowy_KS-Ekspert\01_KSE_2006_2\Makefile.win [Build Error] [main.o] Error 1
Eeee..nie mam teraz kompilatora ale zmień nazwę katalogu, tak żeby nie było w niej C++. To raz a dwa to funkcję napisz w .h i wtedy inkluduj i kompiluj. Napisz zy to coś dało. ;)
zrob plik program.h , daj w nim :
int prog();
i includuj go z mian.cpp . ogolnie plikow .cpp sie z regoly nie includuje... -_-
Albo dodaj deklaracje tej funkcji przed funkcją main tj.
int prog();
oki, dzięki, pomogło, działa :)