Перечисление функций C / C ++ (анализ кода в Unix)

Поддерживаем ли мы незнакомый код или проверяем детали реализации модуля Apache, это может помочь, если мы сможем быстро пройтись по коду и составить обзор того, на что мы смотрим. Grep удовлетворяет большинство моих ежедневных потребностей, но в некоторых случаях это просто не годится.

Вот типичный пример того, как это может помочь. Чтобы найти определение функции PHP, в которой я заинтересован, я могу ввести это в командной строке:

grep -r "function myfunc" .

Это может быть очень быстро адаптировано к C или C ++, если мы знаем тип возвращаемого значения, но все становится более сложным, если, скажем, я хочу перечислить все методы, которые предоставляет мой класс:

grep "function " ./src/mine.class.php

Поскольку в C ++ нет ни одного ключевого слова, обозначающего функцию или метод, и поскольку в целом это более сложный синтаксис, я думаю, что мне нужен какой-то инструмент статического анализа кода, умное использование препроцессора C или слепое доверие, когда кодировщик следует строгим правилам кода (количество пробелов, положение фигурных скобок и т. д.), чтобы получить результаты такого рода.

Чтобы вы посоветовали?

Ответы на вопрос(5)

Ваш ответ на вопрос