Форум программистов, компьютерный форум CyberForum.ru

Копирование одного массива в другой - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача по теме карта (map) http://www.cyberforum.ru/cpp-beginners/thread629938.html
Условие: Дан файл содержащий в каждой строке фамилию отца и имена детей. Занесите все данные в карту где фамилия является ключом Выведите имена всех детей в отдельный файл через пробел. #include <iostream> #include <fstream> #include <vector> #include <string> #include <map>
C++ Русская справка для VS2010 Справка на английском что делать ? VS2010 Что делать, мне русская нужна. :( http://www.cyberforum.ru/cpp-beginners/thread629920.html
Ввод целых чисел C++
Пользователь вводит целое число, но если введёт символ - программа вылетает. Что можно сделать, чтобы избавиться от данной проблемы? #include "stdafx.h" #include <iostream> using namespace std; int main() { setlocale(LC_ALL, "Rus"); int number ;
Функция main с аргументами C++
Приветствую, подскажите где именно указывать параметры аргументов(int argc, char **argv), если использовать следующий тип записи int main(int argc, char **argv) { return 0; }
C++ Совместное использование указателей и ссылок http://www.cyberforum.ru/cpp-beginners/thread629891.html
int *ptr; int &ref = *ptr; ref = 1; Вот и весь вопрос. Ничего плохого в этом нет?
C++ Deep copy and Shadow copy Этот проект компилируется нормально. И функциональность всех элементов на первый взгляд нормальная. ПРОБЛЕМА: Надо сделать нормально = оператор и копи конструктор. Вообщем где или кто и как то я услышал (не важно ) что есть такое понятие как shadow copy and deep copy. Типа вроде как если имплиминтировать как я сделал, то // from Array. cpp m_size = source.m_size; // shallow copy... подробнее

Показать сообщение отдельно
Toshkarik
1140 / 857 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
28.07.2012, 14:22
Имя массива является константным указателем на его первый элемент. Если нужно присвоить значения из первого массива второму, используйте цикл:
C++
1
2
for ( int i = 0; i < 10; i++ )
   second[ i ] = first[ i ];
или функцию memcpy из cstdlib:
C++
1
std::memcpy( second, first, sizeof( int ) * 10 );
Добавлено через 4 минуты
Даже если бы Вы использовали не константные указатели, то при присваивании, Вы бы не скопировали значения, а всего лишь навсего указатель second указывал бы туда же, куда и first.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru