Отслеживание того, сколько раз функция вызывается, легко переносить счетчик в качестве аргумента в функцию. Также легко вернуть один из вызываемой функции. Но я не хочу идти по этому пути. Причина этого в том, что это похоже на плохое программирование (позволяя функции знать слишком много информации). Есть ли лучший способ отслеживать, сколько раз эта функция была вызвана?C++: отслеживать функцию времени называется
Я просто ищу понятия, которые я мог бы изучить. Предоставление примеров кода не обязательно, но может быть полезно.
Редактировать: Я действительно не ищу инструменты для профилирования. Позвольте мне добавить код, чтобы понять свою точку зрения. Поскольку область действия funcCounter заканчивается в основном, у меня нет способа вернуть переменную myFunction, которая будет увеличивать funcCounter. Я мог бы вернуть 1 из myFunction, а затем увеличивать funcCounter таким образом, но это не похоже на очень хорошее программирование. Есть ли другой способ сделать это?
int main()
{
int funcCounter = 0;
char *mystring = "This is a silly function.";
myFunction(mystring);
cout << "Times function is called: " << funcCounter << endl;
return 0;
}
void myFunction(char *mystring)
{
cout << mystring << endl;
}
Почему? Этот ответ может изменить ответ. Тестирование? Мониторинг сервера? Анализ алгоритма выброса? – Stephen