szablony - error: expected `;' before "b"
Ostatnio zmodyfikowano 2008-06-30 23:25
DejaVu Temat założony przez niniejszego użytkownika |
szablony - error: expected `;' before "b" » 2008-06-30 23:25:17 [tutorial]mib podesłał do mnie pytanie czemu poniższy program się nie kompiluje: #include <iostream> #include <vector> using namespace std;
class pom { };
template < class param > class t { vector < param > a; vector < param >::iterator b; };
int main() { t < pom > bb; return 0; }
10: error: expected `;' before "b" Otóż... gdy korzystamy z szablonów kompilator wyrzuca błędy w miejscach, które są teoretycznie napisane poprawnie składniowo, musimy czasami mu pomóc. W większości przypadków rozwiązaniem będzie dopisanie typename na początku wiersza w którym występuje błąd. Tak więc rozwiązany problem wygląda tak: #include <iostream> #include <vector> using namespace std;
class pom { };
template < class param > class t { vector < param > a; typename vector < param >::iterator b; };
int main() { t < pom > bb; return 0; }
[/tutorial] |
|
« 1 » |