5

ich einfach Kommentare in meine Header-Dateien im StilVisual Studio 2012 IntelliSense mit Visual Assist X und Doxygen

// Returns a new string in which all occurrences of a specified string in the 
// current instance are replaced with another specified string. 
// - strSubject: The string to perform the replacement on. 
// - strOldValue: The string to be replaced. 
// - strNewValue: The string to replace all occurrences of strOldValue. 
static RUNTIME_API String::type Replace 
    (_In_  String::type strSubject, 
    _In_ const String::type& strOldValue, 
    _In_ const String::type& strNewValue); 

so schreiben verwendet, dass Visual Assist zeigt mir genau diesen Kommentar:

IntelliSense

Derzeit denke ich darüber nach, mit Doxygen eine Dokumentation für das Projekt zu erstellen, aber ich habe Schwierigkeiten, einen Dokumentationstil zu finden, der korrekt in den ToolTips angezeigt wird und mit Doxygen analysiert werden kann. Zuerst habe ich darüber nachgedacht, Doxygen-Stil-Kommentare in die * .cpp-Dateien aufzunehmen, so dass nur die Kopfzeilenkommentare angezeigt werden. Daher in meiner Quelldatei habe ich einen Kommentar wie

/*! 
* Returns a new string in which all occurrences of a specified string in the 
* current instance are replaced with another specified string. 
* 
* \param strSubject The string to perform the replacement on. 
* \param strOldValue The string to be replaced. 
* \param strNewValue The string to replace all occurrences of strOldValue. 
* 
* \return A string that is equivalent to the current string except that all 
*   instances of strOldValue are replaced with strNewValue. If 
*   strOldValue is not found in the current instance, the method returns 
*   the current instance unchanged. 
*/ 
String::type String::Replace 
    (_In_  String::type strSubject, 
    _In_ const String::type& strOldValue, 
    _In_ const String::type& strNewValue) { /* ... */ } 

Überraschenderweise bekomme ich zwei verschiedene Ausgänge, wenn diese Funktion schweben oder, wenn Visual Vorlagen „IntelliSense“ bekommen. Schwebend die Replace Ausbeuten

Hover ToolTip

während die erwähnte IntelliSense liefert

enter image description here

jedoch den Kommentar Doxygen-Stil in den Kopf bewegt ein seltsames Ergebnis hat

enter image description here

Ich würde gerne wissen, ob Sie Vorschläge haben, wie ich Qt-Stil doxygen Kommentare verwenden kann, aber IntelliSense den entsprechenden Tooltip (was auch immer es sein mag) anzuzeigen und nicht verschiedene anzuzeigen, basierend darauf, wie ich es aufrufen?Es muss einen Weg geben, dies zu vereinheitlichen. (Alternativ muss ich wie immer arbeiten und separate Dokument Header, die nur aus doxygen Kommentare bestehen - auf diese Weise habe ich keine Probleme, aber würde redundante Daten haben)

+0

Ich habe eine Support-Anfrage an Whole Tomato über ein ähnliches Problem gestellt, das ich gesehen habe, sie sagten, sie könnten repro und einen Fehler melden. Keine Ahnung, wann das gelöst wird. Ich habe die aktuellste Version von Visual Assist mit VS 2013 ausprobiert. –

Antwort

0

Die einzige einfache (aber hässliche Art und Weise) sehe ich ist einige Präprozessordirektiven hinzufügen, um Visual Studio ignoriert es wie

#if 0 
/*! your comment 
*/ 
#endif 

Sie mögen vielleicht ein paar Sachen nach dem endif hinzufügen, damit Sie leicht mit der Forschung entfernen und ersetzen, ohne die, die Sie entfernen müssen. Zumindest in VS2013 ignoriert es ziemlich gut die #if 0 Blöcke. Mit diesem sollten Sie in der Lage sein, sie in der gleichen Datei zu lassen, so dass es weniger ein Schmerz ist.