Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2012, 21:46   #31
Suby
Пользователь
 
Аватар для Suby
 
Регистрация: 03.11.2012
Сообщений: 89
По умолчанию

Кстати, задачу решил, наконец-то, разобрался.
Цитата:
Сообщение от Abstraction Посмотреть сообщение
Код:
*name = *(n.name);
//А лучше - сразу name = new std::string(*n.name), он задействует конструктор копирования
Вот где собака была зарыта

Всем спасибо! Теперь можно двигаться даьше)))
Suby вне форума Ответить с цитированием
Старый 21.12.2012, 22:32   #32
Perchik71
С++, Delphi
Форумчанин
 
Аватар для Perchik71
 
Регистрация: 24.11.2012
Сообщений: 495
По умолчанию

Цитата:
Сообщение от Suby Посмотреть сообщение
Именно! Ведь это дополнительные затраты ресурсов на создание нового объекта. В книге, которую я сейчас читаю приводится много аргументов в пользу использования ссылок и указателей где только возможно и не поощряется лишние копирования и создания копий.
Жрёт больше всего ОС, всё остальное кал для наших процессоров.
Если гнать прогу через профайлер вы это увидите, очень ощутимо она кушает. У меня столько бустеров не найдётся
А безопасность кода превыше всего.
Мне не очень нравиться когда программа начинает глучить.
Особенно это знают геймеры.
Поэтому баланс нужно понимать.
Если помог, тут весы есть , Вам не сложно, а мне приятно.
Perchik71 вне форума Ответить с цитированием
Старый 21.12.2012, 22:38   #33
Perchik71
С++, Delphi
Форумчанин
 
Аватар для Perchik71
 
Регистрация: 24.11.2012
Сообщений: 495
По умолчанию

конечно, отправить в стек 4 байта(указатель), намного проще и быстрее.
к этому нужно стремиться. но когда функция что либо возвращает.... тут нужно серьёзно подумать... ибо инициализация объектов функции приведёт к уничтожению после её завершения всех элементов, что выделил стек.
в результате вы получите мусор, который приведёт к криту. ну и так далее... вариантов много. всё зависит от ситуации... чего вы хотите итд.
Если помог, тут весы есть , Вам не сложно, а мне приятно.
Perchik71 вне форума Ответить с цитированием
Старый 21.12.2012, 23:08   #34
_Bers
Старожил
 
Регистрация: 16.12.2011
Сообщений: 2,329
По умолчанию

Цитата:
Сообщение от Suby Посмотреть сообщение
Я это всё понимаю. Я имел в виду маленько другое... Ну предположим, например, если сравнить передачу аргументов функции по ссылке и по значению. Если мы передаем аргументы по значению то создается копия аргумента, а если по ссылке то нет.
Я всегда передаю все аргументы по ссылкам.
За искл. примитивов типа int, int* и тп.
_Bers вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выделение памяти Dady 1992 Общие вопросы C/C++ 2 26.06.2012 18:45
Распределение памяти. Динамическое выделение памяти с++ Tolian92 Помощь студентам 8 14.05.2012 21:44
Конструктор копирования и оператор присваивания DenisS0 Общие вопросы C/C++ 4 05.12.2011 10:41
До выделение памяти MAKTE Общие вопросы C/C++ 4 20.05.2008 21:34