C++ IDE для Linux с умным ссылочным поиском

Существует ли IDE, поддерживающий C++ с ДЕЙСТВИТЕЛЬНО умным поиском ссылок? 'Ссылкой' я имею в виду использование класса (или его участник), переменная, функция в целой или Рабочей области Проекта.

Существует много IDE если это. Некоторые из них, кажется, только ищут текст с тем же именем, дающим много материала, другие более умны и проверяют контекст (как границы класса, пространство имен), но не достаточно точны.

Лучшим, который я попробовал до сих пор, был Визуальный SlickEdit, но все еще существует больше для пожелания.

class C1
{
    int foo;
};
class C2
{
    int foo;
};

Например, в этой ситуации при поиске C1::foo ссылки я не хочу C2::foo быть показанным также.

Так, есть ли IDE, который был бы так умен?

Edit2

10x все для ответов до сих пор.

Я попробовал Eclipse, ссылочный поиск кажется относительно хорошим, но ему требуются 20 минут для индексации проекта среднего размера, и 4 раза 5 он исчерпывает память и катастрофические отказы. Я пытался увеличить его и некоторый другой совет, и это стало немного лучше, но все еще довольно медленным и раздражающим с этими катастрофическими отказами.

Я попробовал KDevelop3, но функция, упомянутая в этом вопросе, не является очень расширенной - кажется, просто очень усовершенствован grep основанный текстовый поиск.

Edit4

KDevelop4 - Я пытался заставить его работать, но последняя бета, это довольно неприменимо для пользовательских проектов make-файла, я не мог сделать что-либо с ним.

Edit5
Я был удивлен, но спокойный Создатель действительно успел в моих тестах. Это, кажется, не создает некоторый тег/индексные файлы, но так или иначе умеет показать очень точно использование переменной/функций/классов. К сожалению, это, кажется, не работает очень правильно с шаблонами при следовании определениям функций.

Ни один из упомянутых IDE не мог конкурировать Визуальный SlickEdit в работе со ссылками, виртуальными функциями, и т.д. спокойный Создатель был самым близким, хотя, таким образом, я выберу его в качестве ответа на мой вопрос.

6
задан Dmitry Yudakov 29 March 2010 в 10:06
поделиться

7 ответов

Я думаю, что Qt-Creator может вам помочь. В новой предварительной версии 2.0 добавлено несколько новых функций.

2
ответ дан 16 December 2019 в 21:37
поделиться

Вы можете посмотреть CodeBlocks [ http://www.codeblocks.org/] . Я только начал его использовать, но не тестировал на ваши требования. Так что сейчас я не претендую на 10X. Но вы можете попробовать. Его открытый исходный код и хороший.

0
ответ дан 16 December 2019 в 21:37
поделиться

Я думаю, что вы могли бы использовать Eclipse , в основном я думаю, что он сможет делать то, что вы хотите, или почти достаточно. Также здесь - краткое описание его параметров поиска.

3
ответ дан 16 December 2019 в 21:37
поделиться

Вы должны попробовать KDevelop 4, а не старую версию.

0
ответ дан 16 December 2019 в 21:37
поделиться

Нет, и я не думаю, что мы когда-нибудь увидим реализацию, которая будет так же хороша, как в редакторах C# или Java, по двум причинам:

1) препроцессор:

#ifdef _DEBUG
#define FOO(x) C1(x).foo
#else
#define FOO(x) C2(x).foo
#endif

2) шаблоны:

template<class C> void Method(C const& c) {
    printf("%d", c.foo);
}

В обоих случаях трудно определить, на какой класс действительно ссылаются.

2
ответ дан 16 December 2019 в 21:37
поделиться

Я сам не использовал KDevelop, но у меня сложилось впечатление, что он делает серьезный разбор исходного кода и способен получить доступ к информации исходного кода через редактор. У него есть по крайней мере некоторые продвинутые функции помощника по коду.

0
ответ дан 16 December 2019 в 21:37
поделиться

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

1
ответ дан 16 December 2019 в 21:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: