#include <iostream>
using namespace std;
string str[10];
// 1.返回数组的引用,参数是一个数组的引用
string(&str_arr_1(string (&arr)[10]))[10]
{
return arr;
}
// 2.返回自定义类型数组的引用,参数是一个数组的引用
typedef string arr[10];
arr& str_arr_2(string(&arr)[10])
{
return arr;
}
// 3.使用后置运算符 返回自定义类型数组的引用,参数是一个数组的引用
auto str_arr_3(string(&arr)[10])->string(&)[10]
{
return arr;
}
//4.使用decltype 返回自定义类型数组的引用,参数是一个数组的引用
decltype(str)& str_arr_4(string(&arr)[10])
{
return arr;
}
int main()
{
// 初始化数组
for (int i = 0; i < 10; ++i)
{
str[i] = '0' + i;
}
// ptr1指针:指向引用数组的地址
string* ptr1 = str_arr_1(str);
f