Szablony klas - błąd przy tworzeniu obiektu (template argument list)
Ostatnio zmodyfikowano 2014-09-29 20:50
ubidragon Temat założony przez niniejszego użytkownika |
» 2014-09-29 16:30:36 Faktycznie, dzięki wielkie, spojrzałem na wsze odpowiedzi o rozjaśniło mi się to. Zapomniałem że przy tworzeniu obiektu w stanie domyślnym parametrów nie podaje się, a ja z przyzwyczajenia dałem parametry jak w funkcji. konto < int > test; dochod < int > op1( "opis", 100 ); test.dodaj( op1 );
Poprzedni błąd zniknął, niestety pojawił się nowy: error C2664: 'konto<typ>::dodaj' : cannot convert parameter 1 from 'dochod<typ>' to 'int' konto stworzyłem do typu int, operacja została zrobiona z kwotą int, niby typy się zgadzają. |
|
pekfos |
» 2014-09-29 17:17:54 Niby jak? Masz int i dochod<int>. |
|
ubidragon Temat założony przez niniejszego użytkownika |
» 2014-09-29 17:41:28 Przed chwilą wpadłem na pewien pomysł, ale nie wiem czy dobrze kombinuję.
Jakby w funkcji dodaj stworzyć osobny typ szablonowy dla przyjmowanej jako argument operacji?
EDIT: Chyba jednak nie, teraz wysypuje się mnóstwo błędów bo wszędzie trzeba uwzględnić drugi argument szablonu. Nie wiem w jaki sposób rozwiązać problem, żeby to dodawanie działało.
Kluczowe jest tu dla mnie odpowiedź na pytanie W jaki sposób móc przekazać dochod<int> do funkcji dodaj? |
|
maly |
» 2014-09-29 20:03:47 Kluczowe jest tu dla mnie odpowiedź na pytanie W jaki sposób móc przekazać dochod<int> do funkcji dodaj? |
Kluczowe jest tu dla mnie odpowiedź na pytanie Czy umiesz to w ogóle napisać bez szablonów? |
|
Monika90 |
» 2014-09-29 20:50:07 Ja nie za bardzo widzę sens w tym co próbujesz tu zrobić, ale jak chcesz to masz: template < typename typ > class konto { public: template < template < typename > class Operacja > void dodaj( const Operacja < typ >& op ) { } };
|
|
1 2 « 3 » |