我正在尝试实现一个超立方体类,即多维向量。我有一个概括它的问题。我可以为三维超立方体制作一个,但如前所述,问题在于对其进行概括。有人可以帮我吗?您应该能够编写hypercube<4> w(5)
以获得每个向量中的 4 个维度和 5 个元素,总共 5*5*5*5 个元素。
这是我的三维版本的代码:
#include <vector>
using std::vector;
using namespace std;
template <int b>
class Hypercube {
public:
Hypercube(int a) : intvec(a){
for (int i = 0; i<a;i++) {
intvec[i].resize(a);
for (int j = 0;j<a;j++) {
intvec[i][j].resize(a);
}
}
}
vector<vector<int> >& operator[](int i) {
return intvec[i];
}
vector<vector<vector<int> > > intvec;
};