Я пытаюсь наследовать от шаблона класса, в этом случае карта класса должна наследовать от класса cardType (который является шаблоном) ... Я сделал ошибку, пытаясь наследовать от нормального класса, таким образом, ядовольно запутанно ... Если бы кто-нибудь мог дать какое-либо представление о том, где я делаю свои ошибки, это было бы очень ценно ... Я приложу card.cpp и cardType.cpp.Я искренне благодарен вам за любые советы:)
card.cpp
#include<iostream>
#include "card.h"
#include <string>
#include "cardType.h"
using namespace std;
template<class T> class card : public Card<T> {
};
Card::Card(FaceAnimal _face, FaceBackground _bg) {
face = _face;
bg = _bg;
}
int Card:: getNRows() {
return 3;
}
string Card::operator()(int i) {
string row = "";
switch (bg) {
case 0: row = "r"; break;
case 1: row = "g"; break;
case 2: row = "p"; break;
case 3: row = "b"; break;
case 4: row = "y"; break;
}
if (i == 0 || i == 2) {
row += row;
}
else {
switch (face) {
case 0: row += "C"; break;
case 1: row += "P"; break;
case 2: row += "O"; break;
case 3: row += "T"; break;
case 4: row += "W"; break;
}
}
row += row[0];
return row;
}
// cardType.cpp
#include "cardType.h"
template <class T>
cardType<T>::cardType(){}
template <class T>
void cardType<T>::SetValue(T obj_i){}
template <class T>
T cardType<T>::Getalue(){return cardT;}