[C++] undefined reference, proste operacje na obiektach
Ostatnio zmodyfikowano 2014-03-25 19:35
fmmat Temat założony przez niniejszego użytkownika |
[C++] undefined reference, proste operacje na obiektach » 2014-03-24 19:44:57 Witam, mam problem undefined reference to `WTP::wspolczynnik(int)' kod nie jest jakis bardzo skomplikowany, dla pierwszego argumentu tworzy wiersz trojkata pascala, a nastepnie dla nastepnych argumentow wypisuje dane elementy utworzonego wiersza. W Javie mam napisane i działa, lecz problem pojawia się w C++ z operacją na kilku plikach .cpp
#include <stdlib.h> #include "wierszyk.h" #include <string> #include <cstring> #include <iostream>
using namespace std;
int main( int argc, char * argv[] ) { int b = 0, n = 0, x = 0; n = atoi( argv[ 1 ] ); if( n >= 0 ) { for( int i = 2; i < argc; i++ ) { b = atoi( argv[ i ] ); WTP * wiersz = new WTP( n ); x = wiersz->wspolczynnik( b ); if(( b < 0 ) ||( x > n ) ) cout << b << " - liczba spoza zakresu" << endl; else cout << b << " - " << x << endl; } } else { cout << "Blad parametru. " << endl; return 0; } }
#include <stdlib.h> #include <string> #include <cstring> #include <iostream> #include "wierszyk.h"
using namespace std;
WTP( int n ) { tab = new int[ n + 1 ]; tab[ 0 ] = 1; for( int i = 0; i < n - 1; i++ ) { for( int j = i + 1; j > 0; j-- ) { tab[ j ] = tab[ j ] + tab[ j - 1 ]; } } }
int wspolczynnik( int m ) { return tab[ m ]; };
#ifndef wierszyk #define wierszyk #include <cstdlib> #include <string> #include <cstring> #include <iostream> using namespace std;
class WTP { public: int * tab; WTP( int n ); int wspolczynnik( int m ); };
#endif
Błąd występuje w linijce " x = wiersz->wspolczynnik(b); ". Mógłby mi ktoś powiedzieć co mam źle i jak to poprawić żeby dla każdego argumentu uruchamial się ten konstruktor WTP i zeby wypisywało tą f. współczynnik? |
|
pekfos |
» 2014-03-24 19:48:00 Nie masz implementacji żadnej metody z klasy WTP. |
|
fmmat Temat założony przez niniejszego użytkownika |
» 2014-03-24 19:55:17 Jak ją zrobić? |
|
pekfos |
» 2014-03-24 19:57:37 Prawie tak jak w WTP.cpp, tylko z innymi nazwami. |
|
fmmat Temat założony przez niniejszego użytkownika |
» 2014-03-24 20:01:30 dalej nie wiem, wg mnie to jest implementacja:
int wspolczynnik( int m) { return tab[m]; }; |
|
Monika90 |
» 2014-03-24 20:02:36 |
|
fmmat Temat założony przez niniejszego użytkownika |
» 2014-03-24 20:17:06 Mam dopisać int WTP::wspolczynnik( int m ) { return tab[ m ]; } ? |
|
pekfos |
» 2014-03-24 20:26:23 Nie zaszkodzi sprawdzić. |
|
« 1 » 2 |