Как я могу сделать это, чтобы все могли использовать это? C ++ - PullRequest
1 голос
/ 22 февраля 2010

Я немного новичок в C ++, так что я не знаю, как это сделать, но мой главный смысл в перекодировании это увеличить скорость моей программы, я кодирую проект, и мой код:

HWND hWnd = FindWindow(NULL, L"*window's name*");
DWORD th32ProcId;
HANDLE hProc;

GetWindowThreadProcessId(hWnd, &th32ProcId);

hProc = OpenProcess(PROCESS_VM_OPERATION | PROCESS_VM_WRITE | PROCESS_VM_READ, 0, th32ProcId);

так что у меня есть около 20 функций, которые все используют это в начале каждого запуска, и значение никогда не изменится, есть ли способ, которым я могу объявить, а затем установить его на значение, которое он находит?

мой код настроен так

один главный файл int main (), он просто установлен в цикле, продолжает повторное тестирование и вызывает другие функции, а все остальное в пустоте name () и у меня есть 2 int name ()

im, использующих VC ++ 2008.

edit no: |я просто хочу, чтобы я мог поделиться этими значениями со всей программой.

1 Ответ

2 голосов
/ 22 февраля 2010

Если я правильно понимаю ваш вопрос, вы хотите реализовать какое-то кэширование. Это было бы хорошо, и вы можете создать каше с std::map.

Возможно, вы бы что-то вроде:

std::map<std::string, HANDLE> cacheMap;

Затем вы можете проверить cacheMap, чтобы увидеть, существует ли результат. Если она существует, вам не нужно вызывать функцию, если она не существует, вы вызываете функцию и добавляете результат в map.

...