数组不可拷贝, 所以函数不可返回数组, 但可以返回指针和引用
简单的方法:
using int_arr = int[4];
'fuckzlx'返回一个指向含有10个整数的数组指针
#include<iostream>
using namespace std;
using int_arr = int[4];
int_arr* fuckzlx()
{
int_arr* p = new int_arr[2];
p[0][0] = 1;
p[0][1] = 2;
p[0][2] = 3;
p[0][3] = 4;
p[1][0] = 5;
p[1][1] = 6;
p[1][2] = 7;
p[1][3] = 8;
return p;
}
int main()
{
int_arr* p = fuckzlx();
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < 4; j++)
{
cout << p[i][j] << " ";
}
cout << endl;
}
delete[] p;
return 0;
}
复杂的方法: 一步步写
func(int i)// 函数名:func 参数: i
(* func(int i) )// 返回值可以被解引用
(* func(int i) )[10] // 解引用func的调用会得到一个大小为10的数组
int (* func(int i) )[10] //数组中元素为int类型