Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как из wav файла получить читаемый txt, а потом обратно Извиняюсь если не совсем по адресу, но я уверен что местные читатели знают как это сделать. Суть моей проблемы. Я хочу смоделировать звучание гитарной струны при помощи физических формул. ... https://www.cyberforum.ru/ cpp/ thread1791304.html C++ Остановка рабочей функции потока
День добрый. Задумался над таким вот вопросом. Допустим, у меня есть две функции get(StopObj obj) и process(StopObj obj). Эти две функции я запускаю из нескольких потоков. Сам StopObj obj это некий...
C++ Variadic templates, или variadic constructor в шаблоне, или прочие извращения Здравствуйте. Есть такое Wrapper<Obj> w; Wrapper - обертка над объектом того класса, который ему скормят (в данном случае - Obj). Сложная обертка со своей жизнью и делами. Одну из вещей, которая... https://www.cyberforum.ru/ cpp/ thread1790390.html C++ Как сделать ftp клиент через libcurl? добрый день! подскажите, пожалуйста, как сделать ftp клиент через libcurl? а точнее, мне нужно видеть файлы, находящиеся на сервере. у меня получилось подключиться к своему серверу и залить... https://www.cyberforum.ru/ cpp/ thread1788904.html
Освобождение памяти после std:bind C++
Что имею: - CentOS - gcc 4.8 - valgrind Что делаю - С помощью valgrind устраняю утечки - Если приложение остановлено штатно, то все утечки я устранил - Если останавливаю с помощью...
C++ Runtime error при открытии lua-скрипта Всем доброго времени суток. Есть функция, задача которой прочитать lua-скрипт и перенести значения параметров из него в структуру. Код немного условный, потому что инициализация, подключение... https://www.cyberforum.ru/ cpp/ thread1788252.html
C++ С++ идиомы - обсуждение https://www.cyberforum.ru/ cpp/ thread1788235.html
Тема создана для вопросов и обсуждений С++ идиом
Операции с двоичными деревьями поиска C++
Добрый день. Пожалуйста, помогите с написанием программы: Разработать программу, реализующую следующий набор операций с двоичными деревьями поиска: поиск вершины с заданным значением ключа с...
C++ С++ идиомы Перевод статей 1 и 2. Будет постепенно обновляться. Желающие внести вклад могут писать в ЛС. Тема открыта, просьба добавлять только посты с переводом, обсуждение здесь Переведенные идиомы:... https://www.cyberforum.ru/ cpp/ thread1788014.html C++ Внедрение DLL в EXE https://www.cyberforum.ru/ cpp/ thread1787895.html
Здравствуйте, хочу написать свой объединитель exe и dll. Подскажите, как это можно сделать так, чтобы можно было при запуске использовать dll без записи на диск
Как создать оконную программу на c++ exe C++
Можно по подробние как создать оконную программу на c++ exe . Я только что перешол на c++ из Bash (cmd , bat , командная строка ) и как то не хочется опять возвращатся к консольным программам . Я...
C++ Не выделяется память https://www.cyberforum.ru/ cpp/ thread1787351.html
Здравствуйте, пытаюсь выделить память, на одном компьютере работает, на другом нет, возвращает 0x00000000, хотя память имеется в наличии. В чём может быть причина? size_t size = 1586753967;...
63 / 35 / 25
Регистрация: 17.07.2014
Сообщений: 457
0

Аналог декоратора Python или ненормальное програмирование - C++ - Ответ 9441939

09.08.2016, 15:19. Показов 842. Ответов 1
Метки (Все метки)

Всем привет.
Часто приходится делать одну и ту же вещь в коде:

C++
1
2
3
4
DWORD time = ::GetTickCount();
bool result = SomeFunc();
while(!bOK && ::GetTickCount() - time < DEFINED_TIMEOUT)
    result = SomeFunc();
Что же тут происходит? Есть некая ф-ция, пусть будет SomeFunc. Мы должны иногда выполнять ее пока не достигнем нужного результата или пока не выйдет время таймаута. Например, ф-ция проверяет, появилось ли окно на рабочем столе, чтобы затем сделать с ним какие то манипуляции.

Собственно сам вопрос. Можно ли написать какой нибудь класс SmartWaiter (или же функцию), которая бы принимала в себя SomeFunc и целое число - TIMEOUT? Фишка в том, что таких функий, как SomeFunc, очень много, и почти все принимают разное число и разные типы параметров. Возможно ли реализовать что то типа универсального таймера, чтобы на вход принимались только указатель на SomeFunc (независимо от кол-ва и типа аргументов) и TIMEUOT, а затем обьект заставлял функию выполняться n раз пока не достигнем результата или же не выйдет наш TIMEOUT?

P.S. Допускаем вариант передачи указателя и параметров, с которыми мы хотим выполнить эту функцию. Тогда постает вопрос, как наилучшим образом их обработать и как собственно прописать такой указатель как аргумент нашего таймера(void*(как вариант?)).

Вернуться к обсуждению:
Аналог декоратора Python или ненормальное програмирование C++
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.08.2016, 15:19
Готовые ответы и решения:

Есть ли какой-нибудь аналог c# using или python with в c++ ?
В C# (using pattern) и python есть специальные конструкции которые позволяют не следить за...

Ввод значений из строки или аналог cin >> x в Python
Имеется: Задана последовательность из N целых чисел. Определите, сколько элементов этой...

Аналог grep -b на python
Всем привет.Столкнулся с такой проблемой.Есть функция def grepA(word,file,num=0): with...

Есть ли аналог атрибутам из C# в Python?
Есть ли аналог атрибутам из C# в Python? Пример атрибутов: using System.ComponentModel; using...

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.08.2016, 15:19

Что проще изучить: програмирование под Android или iOs
Есть базовые знания Java и C#. Что проще?

Аналог pack/unpuck из Python и PHP
Чем в C++ можно распаковывать бинарные данные в int/short/double? В питоне и пхп для этого есть...

Аналог Steam Desktop Authenticator на Python
Имеется программа: https://github.com/Jessecar96/SteamDesktopAuthenticator Заинтересовало сделать...

Что лучше учить Python 2 или Python 3?
хочу начать учить питон но полазив в нете, частенько попадалась информация что вроде как 2 будет...

Аналог Python-функции OS.System(cmd) на PascalABC.NET
Подскажите как реализовать на PascalABC.NET аналог функции на Python? import os os.system(&quot;&quot;);...

Ненормальное разрешение экрана
Сабж. Видеокарта: ATI Mobility Radeon HD 4500 Series Драйвера установлены. Стояла вин 7, обновил...

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