wake-up-neo.net

Generieren Sie XML-Dokumentationskommentare für /// in Visual Studio 2010 C++

Ich muss meinen Funktionsprototyp (in C/C++ geschrieben) mit Summary, Returns und Param-Tags kommentieren. Wie kann ich Visual Studio zum Einfügen von XML-Tags nach drei Schrägstrichen wie in C # überzeugen? Ich habe eine Lösung gefunden. Wenn ich xx.h xx.cs in C++ - Projekt umbenenne, kann ich /// zum Generieren von XML-Kommentaren verwenden (IntelliSense in XML-Kommentaren funktioniert auch). Es muss einen besseren Weg geben, nicht dort? Es würde mich umbringen, es manuell zu schreiben. Ich bin für jeden nützlichen Kommentar dankbar.

/// <summary>
/// 
/// </summary>
/// <param name="aa"></param>
/// <returns></returns>
bool function1(TypeX aa);
26
user471571

Diese Funktionalität ist nicht eingebaut. Sie können versuchen, Visual Studio-Add-Ins zu verwenden. Ich habe Atomineer Utils Pro Documentation selbst nicht verwendet, aber es sieht vielversprechend aus. Es generiert Dokumentationskommentare und unterstützt C++. Es kostet aber 10 Dollar.

7
Athari

CppTripleSlash erstellt XML-Doc-Kommentar-Stubs in C++ - Dateien, wenn /// eingegeben wird, ähnlich wie in c # in Visual Studio. Dies hat auch einige grundlegende Kenntnisse zum Vervollständigen von XML-Dokumentkommentaren.

8
tcb

GhostDoc теперь будет вставлять комментарии XML для элементов C++. Просто наведите курсор на элемент и нажмитеCtrl+Shift+D,.

GhostDoc-Testbericht.

Für C++/CLI

Diese Anweisungen funktionieren gut für Visual Studio 2015 Update 2.

Aktivieren Sie zunächst die XML-Dokumentation. Dadurch wird eine Metadatendatei generiert, dh die Kommentare werden einschließlich C # extern angezeigt.

 enter image description here

Installieren Sie als Antwort entsprechend @tcbCppTripleSlash . Starten Sie Visual Studio neu, und Sie sollten sich auf den Weg machen.

3
Contango

Schauen Sie sich dieses Add-In an: GhostDoc

1
Florian

In Visual Studio 2010 C++ können Sie Makros definieren, um Dinge für Sie einzufügen.

Definieren Sie ein Makro, um die Zusammenfassungszeile der grundlegenden Funktionsheader einzufügen.

/// <summary> </summary>

Eine andere für eine leere Param-Zeile, eine andere für eine Return-Zeile.

/// <param name=""> </param>

und

/// <returns> </returns>

Mit nur drei Makros können Sie die meisten Ihrer Anforderungen abdecken. Wenn Sie sie ausreichend verwenden, fügen Sie ein Makro für /// <remarks></remarks> und /// <exception name=""></exception> und <see cref=""/> hinzu, und alle, die Sie nicht verwenden, um ein Makro zu erstellen, müssen Sie manuell eingeben.

Ja, Sie müssen den Namen des Parameters manuell eingeben. :) Makros können nicht alles. :)

Siehe: MSDN: VS2010: Aufnehmen von Makros

Siehe: MSDN: VS2010: Ausführen von Makros

UPDATE: Diese Threads waren mir nicht bekannt, als ich diese Antwort schrieb:

SO: Makros laufen nicht in VS2010

MS: Makros in VS2010 durch Sicherheitsupdate im Februar 2014 gebrochen (mit einem vorgeschlagenen Workaround)

0
Jesse Chisholm

Dies gilt für C++/CLI

Eine andere Möglichkeit ist die Verwendung von ILSpy zum Konvertieren von C++/CLI-Code in C # . In C # können Sie dann Kommentare mit Unterstützung von IntelliSence schreiben. Dann kopiere einfach die Kommentare in das C++/CLI-Projekt, kompiliere und es geht dir gut :-)

Konfigurieren Sie Visual Studio (2013) für die Verwendung von ILSpy

  1. Laden Sie die ILSpy-Binärdatei herunter
  2. Fügen Sie in Visual Studio einen neuen Tools-Eintrag hinzu, indem Sie "Tools/External Tools/Add" öffnen.
  3. Geben Sie dort den Pfad zu ILSpy.exe für Command, $(TargetPath) für Argumente und $(TargetDir) für das Ausgangsverzeichnis ein.
  4. Übernehmen und Fenster schließen.
  5. (Auf der Registerkarte "Extras" wird ein neuer Eintrag angezeigt.)
  6. Erstellen Sie ein neues leeres C # -Projekt.

Benutze es

Wenn Sie dann eine Datei des Projekts C++/CLI öffnen und den neuen Eintrag auf der Registerkarte Tools aktivieren, wird ein Fenster (ILSpy) angezeigt, in dem Ihre in C # -Code konvertierte Assembly angezeigt wird. Kopieren Sie diesen Code in eine Datei im C # -Projekt und schreiben Sie XML-Kommentare. 

0
Christian St.