Заставить Eclipse CDT + boost :: shared_ptr <T>работать с завершением синтаксиса? - PullRequest
3 голосов
/ 06 октября 2009

Как заставить Eclipse CDT обрабатывать shared_ptr как T * для завершения синтаксиса?

Я использую Windows в этом случае. У меня 1,39 в папке «Program Files». Я собираюсь попробовать 1.37.

Я использую версию Eclipse для Galileo. Кроме того, я только редактирую и просматриваю исходный код в Eclipse и строю в VC ++ Express. (но это другая история)

Ответы [ 4 ]

4 голосов
/ 06 октября 2009

Какую версию Boost вы используете?

Согласно этой теме :

Оказывается, что в Boost 1.39 есть что-то, что индексатору CDT не нравится.
Если я позволю CDT повысить индекс 1.36, то автозаполнение будет работать для элементов typedef, как показано ниже.
Если я разрешу индексировать только 1,39, то такое же автозаполнение не будет работать.

(происходит с CDT5 или 6 )

2 голосов
/ 03 ноября 2009

Eclipse CDT индексация библиотек наддува уже начинает бороться с версией 1.37 (или даже 1.36, не может «проверить это»).

Мой обходной путь, позволяющий извлечь выгоду из завершения кода при использовании последней версии повышения (1.39), следующий:

  • У меня на компьютере установлены две версии надстройки (1.35 и 1.39).
  • В конфигурации отладочной сборки (настройки / каталоги) я установил путь включения для старой версии Boost.
  • В конфигурации сборки выпуска я установил путь включения для фактической библиотеки наддува.
  • Я установил параметр индексатора «Конфигурация сборки для индексатора» на «Использовать фиксированную конфигурацию сборки»> Отладка

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

1 голос
/ 10 февраля 2010

Я только что опробовал его в Eclipse 3.6 M5 (сборка Helios Milestone) с соответствующей версией CDT 7.0, и он смог автоматически завершить boost :: shared_ptr, который ранее был сбой в Eclipse 3.5 с CDT 6. I Я использую Boost 1.40, поэтому они должны решить любую проблему, с которой столкнулся индексатор шаблонов.

Вы можете попробовать новую сборку, перейдя к http://www.eclipse.org/downloads/, выбрав «Сборки разработки» и затем выбрав «Eclipse для C / C ++», как обычно.

0 голосов
/ 05 апреля 2010

Это было источником разочарования для меня долгое время, но после недавнего обновления до Galileo и CDT 6 оно теперь работает!

Повышение: 1,39
CDT: 6.0.2.201002161416

Надеюсь, это поможет.

...