Как приравнять массивы c

от admin

Присвоению массиву другой массив

Нужно массиву double а[n] присвоить массив double b[n]. Как реализовать? Без цикла.

Голые массивы в С++ являются некопируемыми объектами. Они не копируются ни при инициализации, ни через присваивание. (На массивы, обернутые в классы и копируемые неявно и опосредованно вместе с классом, это ограничение не распространяется.)

Поэтому присвоить массив double а[n] массиву double b[n] у вас никак не получится. Либо явный цикл, либо скрытый цикл, типа memcpy , std::copy и т.п.

Разумеется настоящие «кул хацк0ры» не удержатся от соблазна предложить такое решение

но с точки зрения языка С++ такой код нарушает правила aliasing и его поведение не определено.

C#. Массивы. Часть 3. Ссылки на массивы. Свойство Length. Присваивание массивов

Массивы. Часть 3. Ссылки на массивы. Свойство Length. Присваивание массивов

Содержание

Похожие статьи