1

我正在用 C++ 编写一个矩阵类;我应该使用哪种类型作为矩阵的索引?也就是说,在以下代码中:

template <class elem_type>
class matrix
{
public:
  // snip
  elem_type const &operator()(INDEX_TYPE row, INDEX_TYPE column) const;
};

INDEX_TYPE 应该是什么?如果矩阵仅限于小尺寸,我应该使用可能更小的整数类型吗?

4

1 回答 1

1

类型应该是无符号整数作为索引(这不是一般建议)。因此std::size_t与标准类型兼容,是合适的。

std::size_t 可以存储理论上可能的任何类型(包括数组)对象的最大大小。

std::size_t 通常用于数组索引和循环计数。

小尺寸类型对您没有重大好处。你有内存限制吗?我不这么认为。

于 2013-11-02T22:16:46.233 回答