Когда авто используется против массива, почему он преобразован в указатель, а не ссылку?

См. Пример ниже:

int arr[10];
int *p = arr; // 1st valid choice
int (&r)[10] = arr; // 2nd valid choice

Теперь, когда мы используем auto против arr , тогда он выбирает 1-й вариант.

auto x = arr; // x is equivalent to *p

Есть ли причина для выбор указателя, а не ссылки для массива?

18
задан Rob Kennedy 22 June 2011 в 17:49
поделиться