snajperek130 Temat założony przez niniejszego użytkownika |
Tablice wskaźników na funkcje » 2015-03-31 19:33:48 Witam, proszę o pomoc, jak zdefiniowac wskaznik mogacy pokazywac na tablice wskaznikow do funkcji?? Robie to jakos tak, ale pisze, ze zly szyk ... bool( * wsk[ 6 ] )() = { & do_gor, & do_dolu, & do_przodu, & do_tylu, & obrot_w_lewo, & obrot_w_prawo }; void * wskk[ 20 ] =& wsk;
Chcialbym wpisac do tablicy wskaznikow wskk odpowiednie wskazniki do odpowiednich funkcji i pozniej wypisac je w forze :) |
|
pekfos |
» 2015-03-31 21:22:34 bool( *( * wskk )[ 6 ] )() =& wsk;
Tylko po co? Chcialbym wpisac do tablicy wskaznikow wskk odpowiednie wskazniki do odpowiednich funkcji i pozniej wypisac je w forze :) |
A co nie tak z wsk? Tam też masz wskaźniki na funkcje. |
|
snajperek130 Temat założony przez niniejszego użytkownika |
» 2015-04-03 12:01:16 dobra, zmienilem troche, chodzi mi o cos takiego: #include<iostream> using namespace std; void obrot_w_prawo() { cout << "Obrot w prawo..." << endl; } void obrot_w_lewo() { cout << "Obrot w lewo..." << endl; } void do_przodu() { cout << "Do przodu..." << endl; } void do_tylu() { cout << "Do tylu..." << endl; } void do_gory() { cout << "W gore..." << endl; } void do_dolu() { cout << "W dol..." << endl; }
int main() { void( * wsk[ 6 ] )() = { & obrot_w_lewo, & obrot_w_prawo, & do_dolu, & do_gory, & do_przodu, & do_tylu }; void( * wskk[ 20 ] )(); for( int i = 0; i < 20; i++ ) { cout << wskk[ i ]; } return 0; }
|
|
Monika90 |
» 2015-04-03 12:07:52 co za problem? wskk[ 0 ] = wsk[ 2 ]; wskk[ 1 ] = wsk[ 0 ];
funkcji nie da się wypisać, funkcje można wywołać |
|
snajperek130 Temat założony przez niniejszego użytkownika |
» 2015-04-03 12:19:06 dobra, to jak je pozniej wywolac, zeby wszystkie sie po kolei wypisaly? |
|
Monika90 |
» 2015-04-03 12:21:48 |
|
snajperek130 Temat założony przez niniejszego użytkownika |
» 2015-04-03 12:30:59 dzieki wielkie, zczailem :D #include<iostream> using namespace std; void obrot_w_prawo() { cout << "Obrot w prawo..." << endl; } void obrot_w_lewo() { cout << "Obrot w lewo..." << endl; } void do_przodu() { cout << "Do przodu..." << endl; } void do_tylu() { cout << "Do tylu..." << endl; } void do_gory() { cout << "W gore..." << endl; } void do_dolu() { cout << "W dol..." << endl; }
int main() { void( * wsk[ 6 ] )() = { & obrot_w_lewo, & obrot_w_prawo, & do_dolu, & do_gory, & do_przodu, & do_tylu }; void( * wskk[ 20 ] )(); int numer; for( int i = 0; i < 20; i++ ) { cout << "Podaj numer od 0 do 5: "; cin >> numer; wskk[ i ] = wsk[ numer ]; cout << flush; } for( int i = 0; i < 20; i++ ) { ( * wskk[ i ] )(); } return 0; }
|
|
snajperek130 Temat założony przez niniejszego użytkownika |
» 2015-04-03 12:34:16 Monika90 mozesz mi jeszcze napisac, co oznacza dokladnie twoj kod, tzn ten??: |
|
« 1 » 2 |