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

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

Вернуться   Форум программистов > Операционные системы > Софт
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.06.2013, 14:30   #1
220Volt
Форумчанин
 
Регистрация: 14.12.2012
Сообщений: 671
По умолчанию Переинициализация, правильный подход

Доброго времени суток!
Как «правильно» переинициализировать объекты? С позиции соотношения производительность/количество кода. Когда имеем дело с базовыми типами, все просто:
Код:
Int i = 0; // инициализируем
// что-то делаем с i.
i = 4;  // переинициализируем
// что-то делаем с i.
Но когда типы усложняются, правильней делать методы, типа init(), или создавать объект и использовать operator= и полагаться на оптимизатор?
Код:
class Q {};
Q i ; // инициализируем
// что-то делаем с i.
i = Q();  // переинициализируем
// или i = (const Q&) Q(); 
// что-то делаем с i.
Код:
class Q 
{
	void init();
};
Q i ; // инициализируем
// что-то делаем с i.
i .init();  // переинициализируем
// что-то делаем с i.
По-хорошему надо делать тесты, но интересно, что думают другие. Наверное, все это более четко, когда Q занимает динамическую память, например, содержит vector.
220Volt вне форума Ответить с цитированием
Старый 11.06.2013, 14:39   #2
220Volt
Форумчанин
 
Регистрация: 14.12.2012
Сообщений: 671
По умолчанию

Я промахнулся с местом для темы. Просьба к администрации - перенести меня в "Общие вопросы C/C++".
220Volt вне форума Ответить с цитированием
Старый 11.06.2013, 14:40   #3
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 18,136
По умолчанию

Цитата:
Переинициализация, правильный подход
Правильный подход - указывать язык программирования, ибо подходы у них разные.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 11.06.2013, 17:52   #4
220Volt
Форумчанин
 
Регистрация: 14.12.2012
Сообщений: 671
По умолчанию

Разработал для себя ряд правил, ветка потеряла актуальность.
220Volt вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
подход к инжекту Muvvka Общие вопросы C/C++ 8 18.05.2013 19:27
Переинициализация массива строк inmyacid Visual C++ 2 18.03.2013 10:50
User-mode драйвер / программа-фильтр для сканера штрих-кодов - какой правильный подход при разработке? Ivan_32 Win Api 4 11.09.2012 12:16
Подход к решению kaar Помощь студентам 2 04.04.2010 11:56