Я читаю огромный проект cpp с сотнями файлов .cpp и .h, и я хочу сделать это более эффективно, используя функцию «Перейти к декларации».
Я попробовал vim + ctags + cscope, но когда я «Перейти к декларации» с помощью «Ctrl +]», я обнаружил, что список «объявлений» для меня длинный.
Например, я хочу найти объявление «class Foo :: reset ()», но мне приходит множество кандидатов, таких как «class Bar :: reset ()» или «Class Blahblah :: reset ()».
Интересно, есть ли увлекательный способ найти РЕАЛЬНУЮ ДЕКЛАРАЦИЮ функции, а не выбрать правильный для длинного списка вручную.
Благодарю.
Ни Vim, ни ctags, ни cscope не способны понять ваш код и перейти к декларации, которую вы хотите.
Вы можете попробовать на основе Clang Ты дополняешь меня или же лязг-полной.
Это тяжелое решение, но вы также можете установить Eclipse с инструментами разработчика C / C ++ и использовать плагин Eclim (eclim.org) для общения с Eclipse для поиска и завершения.
Плагин YouCompleteMe поддерживает это.
И CLion, и VSCode намного лучше, чем Eclipse, предоставляют эту функциональность и имеют плагины Vim.