Перейти к содержанию
    

Как осваивать много файловый проект на С++,

Есть проект на С++, достаточно большой: по 30-40 файлов *.h и *.cpp.

 

Проект разрабатывался в Линуксе, вне интегрированной среды и компилировался через gcc просто make-файлом. Возникла необходимость не только работать с проектом как готовым продуктом, но и слегка его модифицировать.

 

Есть ли программы под Windows или FreeBSD, позволяющие легко искать функции, структуры и классы в подобных наборах файлов, без использования интегрированных сред? То есть, просматривая, например, текст произвольного файла и выбрав в нем название функции (структуры), автоматически перейти к ее телу в другом файле.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

То есть, просматривая, например, текст произвольного файла и выбрав в нем название функции (структуры), автоматически перейти к ее телу в другом файле.

Eclipse в этом смысле молодец. Навигация по коду там просто замечательная.

windows/linux ...

Про FreeBSD - этого я не знаю. :)

 

 

vim + ctags

Попутно вопросик.

Вот Eclipse в редакторе enum-ы выделяет (подсветка + курсивом). Как это в виме сделать? :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот Eclipse в редакторе enum-ы выделяет (подсветка + курсивом). Как это в виме сделать? :)

taghighlight

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

если нужна кросс-платформенность и безгеморная сборка, то Eclipse - лучший вариант.

для сборки не нужен make-файл, достаточно добавить папки с исходниками в include, и нажать F9.

автопоиск любых объектов по F3, всплывающие подсказки, автодополнение, рефакторинг.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проект разрабатывался в Линуксе, вне интегрированной среды и компилировался через gcc просто make-файлом. Возникла необходимость не только работать с проектом как готовым продуктом, но и слегка его модифицировать.

 

Вам нужна программа расшифровывающая make-файлы.

Иначе набросав в тот же Eclipse все файлы проекта так и не поймете его структуру, могут попадаться дублирующиеся функции, объявления, макросы, все что угодно, пропадут опции компиляции, определения и проч. Вообщем получите просто мусор не готовый к редактированию, особенно если проект кроссплатформенный.

 

SlickEdit грозится что умеет импортировать make файлы.

Но вот мне не удалось импортировать в него сколько нибудь продвинутый make-файл.

Вообщем тема серьезная и нераскрытая.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...проект на С++, достаточно большой: по 30-40 файлов *.h и *.cpp....

 

OFF/2:

Простите, улыбнуло. Это очень маленький проект. Средний - пару тыщ классов. Ближе к большому - около 100 проджэктов со своими околотысячным кол-вом классов...

 

ну это так. в целях образования

:)

 

удачи вам!!! в нелёгком деле постижения особенностей программирования!!!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо всем за советы!

 

Пока, по ссылке от vitan, выбрал Source-Navigator NG http://sourcenav.sourceforge.net/, как доступный и наиболее простой...

 

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

SlickEdit имеет развитые возможности навигации по коду.

UnderstandingC++ (в закромах было), специальная штука для навигации по плюсовому кода. Хвалят. Сам не пользовался, мне слика хватает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...