Запись массива как аргумент функции ссылки - PullRequest
0 голосов
/ 01 октября 2011

Вероятно, простой вопрос, но меня всегда немного путают ссылки и массивы в качестве аргументов.Является ли следующее действительным в C ++?То есть, имеет ли array[0] значение 10 после вызова function1, если фрагмент вообще компилируется?

void function1(int &data)
{
  data = 10;
}

void function2(void)
{
  int array[2];

  function1(array[0]);
}

Спасибо за разъяснение.

Ответы [ 2 ]

2 голосов
/ 01 октября 2011

Да, будет, и это совершенно правильный код.

0 голосов
/ 01 октября 2011

Является ли следующее допустимым в C ++?

Да.

То есть, имеет ли массив [0] значение 10 после вызова функции 1, если фрагмент вообще компилируется?

Да.

Попробуйте скомпилировать, запустить и поэкспериментировать. Затем задайте следующий - и немного лучше - вопрос.

...