C++模板类。我有一个我不明白的错误。大约30个
我想实现的是维护一个模板矩阵类,但是在30个错误中有一些错误,这是我不太理解的。请帮忙!! 一些错误: “标识符”:未声明的标识符,它显示为col、row和T。C++模板类。我有一个我不明白的错误。大约30个,c++,matrix,C++,Matrix,我想实现的是维护一个模板矩阵类,但是在30个错误中有一些错误,这是我不太理解的。请帮忙!! 一些错误: “标识符”:未声明的标识符,它显示为col、row和T。 无法识别的模板声明/定义。 '操作员首先,发布所有错误的全文 第二,在声明矩阵之前,有两个函数使用矩阵,即 template <int row, int col, typename T = int> class Matrix; 像这样使用它 for (int i = 0; i < my_matrix.Rows; ++
无法识别的模板声明/定义。
'操作员首先,发布所有错误的全文 第二,在声明矩阵之前,有两个函数使用矩阵,即
template <int row, int col, typename T = int>
class Matrix;
像这样使用它
for (int i = 0; i < my_matrix.Rows; ++i)
第四,与其使用C数组,不如考虑使用它,因为它定义了许多有用的方法,主要允许您使用默认的复制和移动构造函数和析构函数。
我们猜对错误了吗?当头单独出现时,错误不会出现。添加源文件时,错误会出现。我无法更改其中的一个,我认为这可能是主要问题无法识别的模板声明/定义尝试创建一个新的模板。如果您将矩阵类减少到一些方法的最小值,这样就足够了,这样就会发生错误。像这样,错误可能发生在任何地方,并且可能有几个错误。也就是说,如果行和列是模板参数,为什么不将内部容器设置为实际数组?也就是说,如果您不只是选择将其更改为2d std::vector或std::array。虽然我假设您希望进行一些微优化,因此使用原始阵列?constexpr int Rows = row;
constexpr int Cols = col;
for (int i = 0; i < my_matrix.Rows; ++i)