gpt4 book ai didi

c++ - 返回私有(private)数组

转载 作者:搜寻专家 更新时间:2023-10-31 01:59:02 26 4
gpt4 key购买 nike

我有一个类,并且有一个数组设置为私有(private)。如何制作 get_array() 函数?我的意思是,我知道我必须返回一个 arr[0] 的指针,我该如何返回这个数组,但这不是违反了私有(private)规则吗?是否有另一种返回此数组的方法?

我实际上想到了在 main 中使用 array2,然后使用类函数编辑该数组。如果上述方法不起作用,我认为这将是 B 计划。

最佳答案

您不能从函数返回数组。正如您所说,您可以返回指向数组第一个元素的指针,但这有一个缺点,即您必须具有一些单独的功能才能从类外部获取数组的大小。

更好的选择是返回一个包含数组的结构。最简单的方法是使用 array 类,它可以在 in Boost 中找到。以及许多标准库实现。

例如,

class C
{
public:
typedef boost::array<int, 5> ArrayType;
ArrayType get_array() const { return array_; }

private:
ArrayType array_;
};

关于c++ - 返回私有(private)数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3478377/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com