Int模板中的数组/向量/其他类型
Int template in an array/vector/whatever
我需要知道如何创建一个数组/矢量包含类定义有点像:
template<unsigned int rows, unsigned int columns>
class Matrix
{
......
};
其中rows
和columns
在向量中可能随项目的不同而变化。由于模板发生了变化,vector将它们视为不同的类型,因此无法工作。
顺便说一句,我选择了这种格式,因为许多与矩阵的操作要求行数和列数相同,模板使检查它更容易。
你可以试试这样
class MatrixBase
{
public:
virtual ~MatrixBase() {}
virtual int getrow() = 0;
virtual int getcol() = 0;
};
template<unsigned int row, unsigned int column>
class Matrix : public MatrixBase
{
public:
virtual int getrow()
{
return row;
}
virtual int getcol()
{
return column;
}
};
Matrix<4, 4> m1;
Matrix<3, 3> m2;
Matrix<2, 2> m3;
vector<MatrixBase*> v;
v.push_back(&m1);
v.push_back(&m2);
v.push_back(&m3);
相关文章:
- 包含指向其他结构的指针向量的结构
- 平面缓冲区可以利用向量中的 0 吗?还是其他小波比哈尔变换更好?
- 如何删除包含其他向量的向量?
- C++:从其他类访问结构的私有成员向量
- 为什么最后一个推回向量的对象的字段会转移到向量的其他对象?
- 只对向量中的一个类成员进行排序,其他成员保持不变
- C++ 继承向量问题(无限循环+在其他类中使用向量的问题)
- 使用字节向量作为其他类型的原始存储是一种好的做法吗
- 指向用随机指针归档的其他类对象的指针的c++向量
- 将向量C++中的每个其他元素累加
- 访问其他类中多个对象的私有成员向量
- 递归回文检查,不使用向量、大小或其他参数
- 在存储库中,筛选器函数返回动态向量或其他存储库
- 如何引用或调用在 c++ 中的其他 while 循环中创建的向量?
- 如何引用其他类中的函数以向量增加价值
- C++ 子类无法访问其他子类向量
- R- armadillo c :用其他两个向量对向量进行排序
- 在一个类中向向量添加元素不适用于其他类
- C 从特定位置插入其他向量中的载体
- Int模板中的数组/向量/其他类型