Zdravím,
mám třídu:
template< typename Real, typename Device = Host, typename Index = int >
class COOMatrix : public SparseMatrix < Real, Device, Index >
a v ni nějaké metody a proměnné, to není důležité myslím
v mainu volám
typedef COOMatrix< float, Host, int > COOMatrixType;
COOMatrixType COOMatrix;
a to vyvolává následující chybu při překladu:
/home/libor/lib/tests/benchmarks/spmv.h: In instantiation of ‘bool setupBenchmark(const tnlParameterContainer&) [with Real = float]’:
/home/libor/lib/tests/benchmarks/benchmark-spmv.h:706:49: required from here
/home/libor/lib/tests/benchmarks/benchmark-spmv.h:670:21: error: cannot declare variable ‘COOMatrix’ to be of abstract type ‘COOMatrix<float, tnlHost, int>’
COOMatrixType COOMatrix;
^
problém je v tom, že pro jinou třídu, která je velmi podobná této a je stejně děděná, mi tato chyba nenastane
se šablonami jsem zatím moc nedělal a proto moc netuším jak chybu opravit, pokud by někoho z vás napadlo v čem by mohla být zrada, byl bych moc vděčný za radu :)