#c #cscope
#c #cscope
Вопрос:
Я использую cscope для создания индекса некоторого исходного кода C . В основном это отлично работает, но у него возникают проблемы при анализе имен функций, у которых есть типы параметров с ограниченной областью действия (с использованием ‘::’). Например:
void SomeClass::doSomethingAwesome( const std::stringamp; input )
{
}
Когда я использую интерфейс cscope для «Поиска этого символа C:» Я понимаю это:
File Function Line
0 doSomethingAwesome <global> 1 void SomeClass::doSomethingAwesome( const std::stringamp; input )
Важным элементом является глобальный тег. Это должно быть ‘doSomethingAwesome’.
Для другой функции без каких-либо параметров с ограниченной областью действия, например
void SomeClass::doSomethingElse( int input )
Я понимаю это:
File Function Line
0 doSomethingElse doSomethingElse 1 void SomeClass::doSomethingElse( int input )
Обратите внимание, что поле функции теперь соответствует имени функции. Теперь я могу успешно искать в cscope другие функции, которые вызывают эту функцию. Я не мог этого сделать с помощью doSomethingAwesome(). Кроме того, любые функции, которые вызываются только из doSomethingAwesome(), не будут отображаться как вызванные какой-либо функцией, поскольку doSomethingAwesome() не была распознана cscope как функция.
Я делаю что-то не так? Или это проблема в анализе функции cscope?