2011-06-23 15 views
26

Używam Eclipse CDT do pisania kodu C++. Po przeczytaniu kilku dyskusji na temat StackOverflow o tym, czy umieścić dokumentację doksygenową w pliku nagłówkowym lub pliku implementacji, wydaje się, że większość programistów preferuje umieszczanie komentarzy doxygen w pliku nagłówkowym (chociaż oczywiście nie jest to oczywiście konsensus). Jednak jeśli umieściłem komentarze doxygen w moich plikach nagłówkowych, nie mogę zmusić Eclipse do wyświetlenia tych komentarzy po najechaniu wskaźnikiem myszy na instancję komentowanej metody/elementu. Czy istnieje sposób, aby Eclipse użył mojej dokumentacji Doxygen z moich plików nagłówkowych w poradnikach Eclipse?Czy wskazówki Eclipse Hover wyświetlają komentarze Doxygen z pliku nagłówkowego?

Ustawiłem "Uwagi do narzędzia dokumentacji domyślnej w obszarze roboczym" na "Doxygen" w Preferencje> C/C++> Edytor.

Używam Eclipse 3.6.2 z CDT 7.0.2 na Ubuntu 11.04.

+0

Natknąłem się na ten sam problem. Eclipse CDT może wyświetlać dokumentację z plików nagłówkowych bez problemów, o ile nie ma dostępu do źródła implementacji, ponieważ wtedy woli wyświetlać dokumentację z tego miejsca (nawet jeśli nie istnieje). Naprawdę denerwujące. – kayahr

Odpowiedz

1

doxygen komentarze są wyświetlane w Eclipse przy aktywowaniu kiedy napisany w:

  • plik cpp (lub nagłówek) plik przed źródła metodą (nie oświadczenie) pliku
  • nagłówka przed deklaracji klasy
+4

Tak, twoja odpowiedź jest zgodna z tym, co również znalazłem. Czy wiesz, czy istnieją sposoby, aby Eclipse wyświetlał komentarze Doxygen z pliku nagłówkowego dla metod i zmiennych członkowskich? –

+1

Właściwie to nie widzę sensu. Myślę, że to najlepsze miejsce do opisania kodu, ponieważ możesz zobaczyć, co opisujesz tylko w tych przypadkach. Komentarze w plikach nagłówkowych są przydatne tylko przy pisaniu/korzystaniu z bibliotek. –

+4

@Yuriy Petrovskiy opis w nagłówku jest o wiele bardziej przydatny, ponieważ nie powinieneś patrzeć na kod implementacji, tylko na interfejsie w nagłówku – avim

0

Znalazłem obejście tego problemu, jednak jest to dość niewygodne do ogólnego użytku.

Jeśli korzystasz z zewnętrznego systemu kompilacji (make/cmake np.), Gdzie eclipse nie może przekazać swoich definicji makr, wszystko co musisz zrobić, to umieścić implementację w swoim własnym strażniku i dodać pakiet chroni makro do definicji symboli zaćmienia. Spowoduje to ukrycie tej części kodu przed zaćmieniem, zmuszając ją do użycia zamierzonych komentarzy bez wpływu na kompilację.

Na przykład:

#ifndef INCLUDE_GUARD_FOR_IMPLEMENTATION 
#define INCLUDE_GUARD_FOR_IMPLEMENTATION 

// Implementation code 

#endif 

a następnie w projekcie -> Właściwości -> C/C++ Ogólne -> Ścieżki i symbole dodać INCLUDE_GUARD_FOR_IMPLEMENTATION w sekcji symboli.

Jest to oczywiście efekt uboczny wyszarzania sekcji, a jeśli nie możesz lub nie chcesz umieścić kodu implementacji w osobnym nagłówku, może to wyglądać na nie na miejscu.

Powiązane problemy