c++ - 允许 n 维坐标的有效方法?

标签 c++ arrays vector struct random-walk

我目前正在构建一个程序,用于计算 n 维中的 self 回避行走。 该程序必须有一个它以前访问过的坐标列表。 对于已知的最大维数,我会简单地制作一个位置结构的 vector :

struct Position
{
    long int x;
    long int y;
    long int z;
    long int w;
    etc...
}

std::vector<Position> history;
Position currentSite;

但是当为 n 维位置编程时,我不确定如何在不创建大小为 n*walk_length 的数组的情况下进行编程。

有没有更“正确”的方法呢?

注意:我正在用 C++ 编程。

最佳答案

如果n在编译时已知,您可以使用 std::array<long,n>代表一个立场。

如果n直到运行时才知道,std::vector<long>会是一个不错的选择。

关于c++ - 允许 n 维坐标的有效方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19956452/

相关文章:

c++ - union 攻击战斗机 (JSF) C++ 编码标准强制性规则排名

javascript - 如何将此正则表达式替换从替换单个单词更改为替换单词数组?

python - 在 python 中,如何创建一个由 1 到 100 之间的数字组成的向量,每个数字重复 100 次

c++ - vector.push_back() 智能感知错误

c++ - 使用系统命令时 SendInput 不起作用

c++ - 排列所有可能的 (0, 1) 值数组

C++,如何将多个输入除以空格?

命令行子集总和

java - 如何将 foreach c# 2d 数组循环转换为 java

C++ 奇怪的行为变异 vector