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++中实现函数返回数组有两种方法:使用指针和使用引用,根据实际情况选择合适的方法。