用于保存数据二维数组的模板类。
此数组中的数据以行优先顺序紧密地打包在一维向量中;也就是说,给定二维位置 (Point2D) 的任何值的向量索引为 index = location.x() + (location.y() * size.x());提供了使用迭代器、一维或二维坐标的索引运算符。
公共类型 | |
| typedef T * | iterator |
公共成员函数 | |
| Array2D () | |
| 默认构造函数。 更多... | |
| Array2D (const Size2D< uint32_t > &size) | |
| 给定初始数组大小的构造函数。 更多... | |
| Array2D (const Size2D< uint32_t > &size, const T &value) | |
| 给定初始数组大小和初始填充值的构造函数。 更多... | |
| Array2D (const Array2D< T > &other) | |
| 复制构造函数。 更多... | |
| Array2D & | operator= (const Array2D< T > &other) |
| 赋值运算符。 更多... | |
| bool | operator== (const Array2D< T > &other) const |
| 相等运算符。 更多... | |
| Size2D< uint32_t > | size () const |
| 返回数组的大小(维度)。 更多... | |
| bool | resize (const Size2D< uint32_t > &size) |
| 调整数组大小。 更多... | |
| const_iterator | begin () const |
| STL 风格迭代器。 更多... | |
| const_iterator | end () const |
| iterator | begin () |
| iterator | end () |
| T & | operator[] (unsigned int i) |
| 使用 [] 运算符的数组索引。 更多... | |
| const T & | operator[] (unsigned int i) const |
| const T & | operator() (uint32_t i) const |
| 使用 () 运算符的数组索引。 更多... | |
| const T & | operator() (uint32_t x, uint32_t y) const |
| const T & | operator() (const Point2D< uint32_t > &p) const |
| T & | operator() (uint32_t i) |
| T & | operator() (uint32_t x, uint32_t y) |
| T & | operator() (const Point2D< uint32_t > &p) |
| const T * | data () const |
| T * | data () |
数据字段 | |
| const typedef T * | const_iterator |
| typedef T* Argus::Array2D< T >::iterator |
|
inline |
|
inline |
给定初始数组大小的构造函数。
参考 Argus::Size2D< T >::height(), Argus::Array2D< T >::size(), 和 Argus::Size2D< T >::width()。
|
inline |
给定初始数组大小和初始填充值的构造函数。
参考 Argus::Size2D< T >::height(), Argus::Array2D< T >::size(), 和 Argus::Size2D< T >::width()。
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
调整数组大小。
调整大小后的数组内容是未定义的。布尔返回值在异常不可用时启用错误检查。
参考 Argus::Size2D< T >::height(), Argus::Array2D< T >::size(), 和 Argus::Size2D< T >::width()。
|
inline |
返回数组的大小(维度)。
被 Argus::Array2D< T >::Array2D(), 和 Argus::Array2D< T >::resize() 引用。
| const typedef T* Argus::Array2D< T >::const_iterator |