假设我有一个名为 A 的类:
class A{
private:
int myarray[3];
int other;
public:
void setarray(int cell_one, int cell_two, int cell_three);
// ^ Sets values passed to function to elements in myarray
}
还有我的 main 中的两个 A 对象:
int main(){
A a_one;
A a_two;
a_one.setarray(5,3,6);
}
有没有办法将 a_one 中的数组复制到 a_two 中的数组,而无需将其他值设置为相等?
最佳答案
我推荐使用 std::array
反而。然后就可以通过简单的赋值实现复制。
例如,您可以创建一个返回数组(可能是 const
)引用的函数,并使用这些函数进行赋值。也许像
struct A
{
std::array<int, 3> a;
// Other member variables...
std::array<int, 3> const& get_array() const
{
return a;
}
std::array<int, 3>& get_array()
{
return a;
}
};
// ...
a_one.get_array() = a_two.get_array();
关于c++ - 将一个对象中的数组设置为等于另一个对象中的数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44741911/