从类中返回只读二维数组
Return read-only 2-D array from class
我有一个类,它包含一个大数组。我想将数组设为私有数组,但我需要从中读取大量数据,但要确保它永远不会被类外的任何东西更改。有没有什么方法可以引用数组,使其可以从中读取,但不能写入?
编辑:这个类将被分发,我想防止未经授权访问所有私人成员。这似乎使得任何类型的引用都是不可能的。
这样的功能可以吗?
class ReadOnlyArray
{
private:
float mData[SIZE][SIZE];
public:
float Get( int i, int j ) const { return mData[i][j]; }
};
是的,您可以返回对vector<vector <T>>
的const引用(您使用的是向量,而不是自己分配内存,对吧)。
类似于:
class MyCLass
{
private:
vector<vector<T>> v;
...
public:
...
const vector<vector<T>>& getVector() const { return v; }
};
将数组设为私有数组。创建公共函数以从数组中检索和返回数据。
相关文章:
- 将值从二维数组输出到文本文件
- 在二维数组中查找最小值和最大值?
- 移动二维数组中的字符
- 如何正确填充在堆上分配的二维数组?
- 传递二维数组时出现问题
- 具有随机数的二维数组不会更改
- 如何在C++中获取二维数组中最少的一列数?
- 如何使用用户输入变量制作二维数组?
- C++ 中动态二维数组的访问冲突
- 遍历二维数组的所有子数组
- 将二维数组的所有元素插入到一维数组中
- 在函数中传递二维数组
- 为什么指针在对二维数组进行排序时无法正常工作?
- 创建 std::string 的二维数组的最佳做法
- 如何将文本文件读取到二维数组中并以 c++ 打印
- 元素在二维数组 c++ 中的出现次数
- 执行 c++ 二维数组
- C++ 中的二维数组初始化为一个值
- 从类中返回只读二维数组
- 如何通过双指针将二维数组作为只读函数传递给函数