C++中实现函数返回数组有两种方法:一种是使用指针,另一种是使用引用。
使用指针
使用指针的方法是,在函数中定义一个指针,指向一个新创建的数组,把这个指针返回给调用函数。例如:
int * func(){ int *arr = new int[10]; // 进行数组初始化 return arr; } int main(){ int *arr = func(); // 使用arr delete []arr; return 0; }
上面的代码中,func函数创建了一个新的数组,并返回了一个指向该数组的指针。在main函数中,可以使用这个指针来访问该数组,使用delete[]语句释放掉该动态分配的数组。
使用引用
使用引用的方法是,在函数中定义一个引用,指向一个新创建的数组,把这个引用返回给调用函数。例如:
int (&func())[10]{ int arr[10]; // 进行数组初始化 return arr; } int main(){ int (&arr)[10] = func(); // 使用arr return 0; }
上面的代码中,func函数创建了一个新的数组,并返回了一个指向该数组的引用。在main函数中,可以使用这个引用来访问该数组,无需使用delete[]语句释放掉该动态分配的数组,因为该数组是在栈上分配的。
在C++中实现函数返回数组有两种方法:使用指针和使用引用,根据实际情况选择合适的方法。