我正在为CUDA处理编写一个矩阵类.
我写了一个矢量类(以下称为Elements)并将其用于矩阵基础.
这是模板定义:
template <typename T,std::size_t M,std::size_t N> class Matrix : public Elements< Elements< T,N >,M > { }
应该注意的是,在Elements类和Matrix类中都没有动态分配任何内容.
我收到警告:基类’struct Elements< Elements< double,2ul>,2ul>’应该在复制构造函数的复制构造函数警告中显式初始化.这是复制构造函数:
DEVICE HOST Matrix(const Matrix & that) { for (std::size_t ind = 0; ind < M; ind++) { for (std::size_t jnd = 0; jnd < N; jnd++) { (*this)[ind][jnd] = that[ind][jnd]; } } }
我究竟做错了什么?