Hej;
mam strukture zawodnik.
Probuje zrobic dwa obiekty napad_1 i napad_2.
Następnie chce wsadzic wartosci zmiennych tych obiektów do funkcji.
Niestety program mi sie wysypuje:
||=== Build: Debug in mecz (compiler: Copy of GNU GCC Compiler) ===|
D:\C++\mecz\boisko.h|17|warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default]|
D:\C++\mecz\boisko.h|18|warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default]|
D:\C++\mecz\main.cpp||In function 'int main()':|
D:\C++\mecz\main.cpp|40|error: no matching function for call to 'zawodnik::zawodnik()'|
D:\C++\mecz\main.cpp|40|note: candidates are:|
D:\C++\mecz\zawodnik.h|21|note: zawodnik::zawodnik(std::string)|
D:\C++\mecz\zawodnik.h|21|note: candidate expects 1 argument, 0 provided|
D:\C++\mecz\zawodnik.h|20|note: zawodnik::zawodnik(int)|
D:\C++\mecz\zawodnik.h|20|note: candidate expects 1 argument, 0 provided|
D:\C++\mecz\zawodnik.h|19|note: zawodnik::zawodnik(double)|
D:\C++\mecz\zawodnik.h|19|note: candidate expects 1 argument, 0 provided|
D:\C++\mecz\zawodnik.h|7|note: zawodnik::zawodnik(const zawodnik&)|
D:\C++\mecz\zawodnik.h|7|note: candidate expects 1 argument, 0 provided|
D:\C++\mecz\main.cpp|45|error: no matching function for call to 'zawodnik::zawodnik()'|
D:\C++\mecz\main.cpp|45|note: candidates are:|
D:\C++\mecz\zawodnik.h|21|note: zawodnik::zawodnik(std::string)|
D:\C++\mecz\zawodnik.h|21|note: candidate expects 1 argument, 0 provided|
D:\C++\mecz\zawodnik.h|20|note: zawodnik::zawodnik(int)|
D:\C++\mecz\zawodnik.h|20|note: candidate expects 1 argument, 0 provided|
D:\C++\mecz\zawodnik.h|19|note: zawodnik::zawodnik(double)|
D:\C++\mecz\zawodnik.h|19|note: candidate expects 1 argument, 0 provided|
D:\C++\mecz\zawodnik.h|7|note: zawodnik::zawodnik(const zawodnik&)|
D:\C++\mecz\zawodnik.h|7|note: candidate expects 1 argument, 0 provided|
D:\C++\mecz\main.cpp|61|error: request for member 'value_x' in 'napad_1', which is of pointer type 'zawodnik*' (maybe you meant to use '->' ?)|
D:\C++\mecz\main.cpp|61|error: 'matryca_poz' was not declared in this scope|
D:\C++\mecz\main.cpp|80|error: 'x_zaw_a1' was not declared in this scope|
D:\C++\mecz\main.cpp|80|error: 'nr_zaw_a1' was not declared in this scope|
D:\C++\mecz\main.cpp|80|error: 'typ_zaw_a1' was not declared in this scope|
||=== Build failed: 7 error(s), 2 warning(s) (0 minute(s), 1 second(s)) ===|
Poniżej program
struktura zawodnik:
plik .h
struct zawodnik
{
int nr_zaw;
string typ_zaw;
double zaw_x;
int value_nr;
string value_typ;
double value_x;
zawodnik( double value_x )
: zaw_x( value_x )
{ }
zawodnik( int value_nr )
: nr_zaw( value_nr )
{ }
zawodnik( string value_typ )
: typ_zaw( value_typ )
{ }
void matryca_poz( double x, int * matryca )
{
int ile = x;
matryca[ ile ] = 2000;
cout << matryca[ ile ] << " matryca klasa" << ile << endl;
}
};
plik main:
zawodnik * napad_1 = new zawodnik;
napad_1->nr_zaw = 80;
napad_1->typ_zaw = "WR";
napad_1->zaw_x = 3200;
zawodnik * napad_2 = new zawodnik;
napad_2->nr_zaw = 13;
napad_2->typ_zaw = "QB";
napad_2->zaw_x = 3000;
Gdzie jest blad?
Dzieki za pomoc:)