Я ищу инструмент, который будет говорить/разрешать для каждой функции все пути вызова (звоните, она "направляет") к нему.
Например:
void deeper(int *pNumber)
{
*pNumber++;
}
void gateA(int *pNumber)
{
deeper(pNumber);
}
void gateB(int *pNumber)
{
gateA(pNumber);
}
void main()
{
int x = 123;
gateA(&x);
gateB(&x);
}
Видеть? Мне нужен инструмент, который скажет мне все маршруты глубже (), и больше, если это возможно.
Путем высказывания "больше" я подразумеваю, что это скажет мне, если указатель совпадет с предоставленный функции вызова.
Это значительно сэкономит мне время.Спасибо!
Doxygen сделает это за вас. Он нарисует вам красивые деревья наследования и покажет всем, кто вызывает (и вызывает) ваши функции.
Я думаю, что cppDepend имеет эту функциональность (наряду с другими функциями анализа кода)
вы можете посмотреть на clang анализатор .
Clang Static Analyzer - это инструмент анализа исходного кода, который находит ошибки в программах C / C ++ и Objective-C.
Я не пробовал, но, глядя на скриншоты обзора кода, он может быть полезен.