"int *(&arry)[10] = ptrs;"的含义是什么?你怎么读这样的东西?

What is the meaning of "int *(&arry)[10] = ptrs;"? How do you read something like this?

本文关键字:是什么 int arry ptrs      更新时间:2023-10-16

我是C++新手,正在尝试学习数组的概念。我知道

int *ptrs[10]; 

具有 ptrs 的含义是指向 int 的十个指针数组。那么怎么样

int *(&arry)[10] = ptrs;

我对它的许多语法感到非常困惑,所以有人可以向我解释它的含义以及如何阅读它吗?很高兴有人可以分解它并用更小的部分来解释它。

arry是一个引用(由十个指向 int 的指针组成的数组)。使用typedef可以使它更清晰。它们与,

typedef int* PTRS[10]; 
PTRS& arry = ptrs;

或(自 C++11 起)

using PTRS = int* [10];
PTRS& arry = ptrs;

变量 arry 是对指向整数的十个指针数组的引用。我不知道你为什么要这样做,但这就是它的意思。:-)