[笔记]C++声明返回数组指针的函数
2024-09-05 00:08:39
数组指针的声明:type (*name)[size];
由于数组不能拷贝,所以函数不能返回数组。但是函数可以返回指针和引用,所以函数可以返回数组指针或引用。
和数组指针的声明类似:
type (*funName(parameter_list))[dimension];
//例
int p[];
int (*arr)[]=&p; //数组指针arr int (*function(int *list))[]
{
return arr; //返回数组指针
}
依据由内向外的原则来分析,function首先是一个函数,其参数是int *,其返回类型是指针,指针的类型是大小为10的整型数组。
使用尾置返回类型可以声明
auto function_1(int *list) -> int (*)[] // ->指定函数返回类型为数组指针
{
return arr;
}
使用decltype类型推断来声明
decltype(arr) function_2(int *list) //decltype根据arr推断出返回类型为指针数组
{
return arr;
}
定义返回数组指针的函数的指针
int (*(*pfunc)(int *list))[] = &function; //函数指针数组
int (*(*arryfunc[])(int *))[]={&function, NULL};
最新文章
- 前端HTML规范
- MP3播放器团队项目
- C#委托使用:多播 ,向委托注册多个方法
- SQL Access Advisor
- 《asp.net mvc实战》笔记
- [Effective C++ --027]尽量少做转型动作
- VS2015 Cordova Ionic移动开发(四)
- angularjs-googleMap googleMap api地址解析与反解析
- iOS定位与地图
- WebApp 框架
- RPD添加网址、变量
- php+socket模拟表单发送请求
- Effective前端6:避免页面卡顿
- BZOJ_2631_tree_LCT
- 百度地图Web引用
- hping安装过程
- 【洛谷P2696】慈善的约瑟夫
- oracle中循环读出一个表的信息插入到另外一个表中
- [转]Hadoop Hive sql语法详解
- 【C++11新特性】 nullptr关键字