Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
csp
1 / 1 / 2
Регистрация: 23.01.2013
Сообщений: 104
1

Как лучше оптимизировать переменные

07.02.2019, 03:17. Просмотров 214. Ответов 3
Метки нет (Все метки)

Код dll внедряемый в игру вызывается много раз в секунду ( от 100 до 2000+ ) в зависимости от мощности пк. Соответственно я как ноль в си, хотел бы понять

1. Что "дороже" - пересоздавать чистый вектор ( std::vector< pair<int, string> > cctt ), делать запись.. или создать 1 раз и очищать его каждый раз.

2. Имеет ли смысл создать отдельную переменную, если в дальнейшем значение мало используется


C++
1
2
3
4
5
6
 int center_y_scr = (panely/2);
 
 RGBA( center_y_scr - size1); 
 RGBA( center_y_scr - size2); 
 RGBA( center_y_scr - size3); 
 RGBA( center_y_scr - size4);
или

C++
1
2
3
4
5
    
 RGBA( panely/2 - size1); 
 RGBA( panely/2 - size2); 
 RGBA( panely/2 - size3); 
 RGBA( panely/2 - size4);
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2019, 03:17
Ответы с готовыми решениями:

Где лучше эти переменные объявлять?
Посмотрите пожалуйста на следующий код (код сишный, но компилировался как C++, так как в чистом Си...

Наследование vs Композиция vs Агрегация: что лучше выбрать? Как лучше передавать объекты в функции?
Добрый день!! Дело вот в чём, я хочу создать класс, внутри которого будут созданы объекты...

Глобальные и локальные переменные: что лучше (или что для чего и в чем конкретная разница)?
Что лучше (или как надо (или что для чего и в чем конкретная разница)): 1. // объявление в...

Как лучше оптимизировать условие
Из edit мы отправляем текст который обрабатывается begin if (Edit1.Text='Выключайся') or...

Как лучше оптимизировать работу с данными БД
Здравствуйте. У меня в приложении есть функция работы с адресами из Кладр. Выглядит это как на...

3
Renji
2513 / 1719 / 515
Регистрация: 05.06.2014
Сообщений: 4,981
07.02.2019, 05:31 2
Цитата Сообщение от csp Посмотреть сообщение
1. Что "дороже" - пересоздавать чистый вектор ( std::vector< pair<int, string> > cctt ), делать запись.. или создать 1 раз и очищать его каждый раз.
Если под очисткой подразумевается clear, то дороже будет пересоздание. Пересоздание это цикл "освободили память-выделили заново". Clear же только помечает память как свободную и прячет в личную заначку. Хотите действительно освободить память, надо еще shrink_to_fit пнуть (причем, вектор имеет право этот shrink_to_fit игнорировать).
Цитата Сообщение от csp Посмотреть сообщение
2. Имеет ли смысл создать отдельную переменную, если в дальнейшем значение мало используется
Да, смысл есть. О том, как часто переменная используется пусть голова у компилятора болит. Вы же оптимизацию кода не отключали?
0
Avaddon74
564 / 348 / 132
Регистрация: 15.09.2017
Сообщений: 1,230
07.02.2019, 07:44 3
Цитата Сообщение от csp Посмотреть сообщение
Что "дороже" - пересоздавать чистый вектор ( std::vector< pair<int, string> > cctt )
Я бы для оптимизации лучше использовал статический массив, чтобы использовать вектор, нужно хорошо понимать его внутренности и как он работает, использовать правильный аллокатор.
Цитата Сообщение от csp Посмотреть сообщение
Имеет ли смысл создать отдельную переменную, если в дальнейшем значение мало используется
конечно имеет, хотя бы потому, что у вас идут вычисления в эту переменную и чтоб каждый раз не вычислять одно и тоже... А компилятор уже сам оптимизирует как посчитает лучше.
0
jugu
213 / 138 / 26
Регистрация: 11.01.2019
Сообщений: 552
07.02.2019, 10:40 4
Я бы сделал вот так:
C++
1
2
3
4
RGBA( (panely >> 1) - size1); 
RGBA( (panely >> 1) - size2); 
RGBA( (panely >> 1) - size3); 
RGBA( (panely >> 1) - size4);
0
07.02.2019, 10:40
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.02.2019, 10:40

Подскажите, как лучше оптимизировать мой сайт
Подскажите, как лучше оптимизировать мой сайт Как лучше оптимизировать по основным ключевым...

Как лучше оптимизировать категорию в которой есть подкатегории?
Всем привет, есть категория родитель вот. Вопрос в ней куча смежных категорий, как к ней собрать СЯ...

Как лучше объявлять переменные
Написал такой код, который сначала получает несколько(много) текстовых файлов: DirectoryInfo...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.