Kompilacja dwóch plików i przestrzenie nazw.
Ostatnio zmodyfikowano 2017-09-06 13:27
gromko12 Temat założony przez niniejszego użytkownika |
Kompilacja dwóch plików i przestrzenie nazw. » 2017-09-06 12:28:42 Witam, nie moge skompilować poniższego kodu. Błąd to: |undefined reference to `golfik::setgolf(golfik::golf&, char const*, int)'| |undefined reference to `golfik::showgolf(golfik::golf const&)'| |undefined reference to `golfik::setgolf(golfik::golf&)'| |undefined reference to `golfik::showgolf(golfik::golf const&)'| Nagłówek: #ifndef GOLF_H_INCLUDED #define GOLF_H_INCLUDED
const int Len = 40; namespace golfik { using std::cin; using std::cout; using std::endl; struct golf { char fullname[ Len ]; int handicap; }; void setgolf( golf & g, const char * name, int hc ); int setgolf( golf & g ); void handicap( golf & g, int hc ); void showgolf( const golf & g ); }
#endif
Plik z main(): #include <iostream> #include "golf.h"
using namespace golfik; void zadanie1() { golf gracze[ 5 ]; setgolf( gracze[ 0 ], "Zdzislaw", 12 ); showgolf( gracze[ 0 ] ); for( int i = 0; i < 5; i++ ) { std::cout << "Wartosc \"1\" za dwukropkiem oznacza ze wpisano nazwisko poprawnie: " << setgolf( gracze[ i ] ) << std::endl; } for( int i = 0; i < 5; i++ ) { showgolf( gracze[ i ] ); } }
int main() { zadanie1(); return 0; }
Plik z definicjami funkcji: #include <iostream> #include <cstring> #include "golf.h"
namespace golfik { using std::cin; using std::cout; using std::endl; void setgolf( golf & g, const char * name, int hc ) { strcpy( g.name, name ); g.handicap = hc; } int setgolf( golf & g ) { std::cout << "Podaj handicap: "; std::cin >> g.handicap; std::cout << "Podaj nazwisko: "; if( std::cin >> g.name ) return 1; else return 0; } void handicap( golf & g, int hc ) { g.handicap = hc; } void showgolf( const golf & g ) { std::cout << "Imie: " << g.fullname << std::endl; std::cout << "Handicap: " << g.handicap << std::endl; } }
|
|
pekfos |
» 2017-09-06 13:27:12 Jak to kompilujesz? |
|
« 1 » |