Статические переменные в часто вызываемых функцияхC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Статические переменные в часто вызываемых функциях

Сообщение Anonymous »

Код: Выделить всё

void storeValidVIDS()
{
static unsigned int mainVID = 0, maxVID = 0, minVID = 0;
static unsigned long* currentInstance = nullptr;
mainVID = GetMainActorVID();
maxVID = mainVID + 5000;
minVID = mainVID - 5000;
while (minVID < maxVID)
{
currentInstance = GetInstancePTR(minVID);
if (HasInstance(currentInstance) && GetInstanceType(currentInstance) == 6)
validVids.insert(minVID);
++minVID;
}
}
используя эту функцию в качестве примера, которая перебирает диапазон виртуальных идентификаторов и сохраняет их в unordered_set, если условие истинно.
при условии, что эта функция вызывается непрерывно каждые 100 миллисекунд. , лучше ли использовать статические переменные с точки зрения производительности, поскольку они инициализируются один раз?
если да, применимо ли это также к контейнерам? Могу ли я сделать что-то вроде static std::vector validTargets = {};, зная, что функция будет вызываться снова и снова.

Подробнее здесь: https://stackoverflow.com/questions/786 ... frequently
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»