我有一个将多维数组存储为成员的类。
struct Structure
{
Structure()
{
memset(Data, 0, sizeof Data);
}
int Number;
int Data[32][32][32];
}
当我编写一个返回 this 对象的函数时Structure
,如果Data
成员复制了所有字节,还是只是传递了一个引用?
Structure Create(int Parameter)
{
Structure structure;
// modify structure based on parameter
// ...
return structure;
}
如果这导致复制整个数据块,我该怎么做才能做得更好?Structure *structure = new Structure();
在堆上分配对象并返回该指针会发生什么变化?