MakeDynamicReloggerGroup
Das C++ Build Insights SDK ist mit Visual Studio 2017 und höher kompatibel. Um die Dokumentation für diese Versionen anzuzeigen, legen Sie das Auswahlsteuerelement Version in Visual Studio für diesen Artikel auf Visual Studio 2017 oder höher fest. Es befindet sich am Anfang des Inhaltsverzeichnisses auf dieser Seite.
Die Funktion MakeDynamicReloggerGroup
wird zum Erstellen von dynamischen Reloggergruppen verwendet. Die Member einer Reloggergruppe empfangen ein Ereignis nach dem anderen (von links nach rechts), bis alle Ereignisse einer Ablaufverfolgung verarbeitet worden sind.
Syntax
auto MakeDynamicReloggerGroup(std::vector<IRelogger*> reloggers);
auto MakeDynamicReloggerGroup(std::vector<std::shared_ptr<IRelogger>> reloggers);
auto MakeDynamicReloggerGroup(std::vector<std::unique_ptr<IRelogger>> reloggers);
Parameter
reloggers
Ein Vektor von IRelogger-Zeigern, die in der dynamischen Reloggergruppe enthalten sind. Diese Zeiger können unformatiert, std::unique_ptr
oder std::shared_ptr
sein. IAnalyzer-Zeiger werden aufgrund einer Vererbungsbeziehung auch als IRelogger
-Zeiger bezeichnet.
Rückgabewert
Eine dynamische Reloggergruppe. Verwenden Sie das Schlüsselwort auto
, um den Rückgabewert zu erfassen.
Hinweise
Im Gegensatz zu statischen Reloggergruppen müssen die Member einer dynamischen Reloggergruppe nicht zur Kompilierzeit bekannt sein. Sie können Member der Reloggergruppe zur Laufzeit basierend auf der Programmeingabe oder basierend auf anderen Werten auswählen, die zur Kompilierzeit unbekannt sind. Im Gegensatz zu statischen Reloggergruppen weisen IRelogger
-Zeiger innerhalb einer dynamischen Reloggergruppe polymorphes Verhalten auf, und virtuelle Funktionsaufrufe werden richtig weitergeleitet. Diese Flexibilität hat allerdings zur Folge, dass die Ereignisverarbeitung länger dauern kann. Wenn alle Member der Reloggergruppe zur Kompilierzeit bekannt sind und kein polymorphes Verhalten erforderlich ist, sollten Sie in Erwägung ziehen, eine statische Reloggergruppe zu verwenden. Wenn Sie eine statische Reloggergruppe verwenden möchten, rufen Sie stattdessen MakeStaticReloggerGroup
auf.
Eine dynamische Reloggergruppe kann in einer statischen Reloggergruppe gekapselt werden. Übergeben Sie ihre Adresse an MakeStaticReloggerGroup
. Gehen Sie so vor, um dynamische Reloggergruppen an Funktionen wie Relog
zu übergeben, die nur statische Reloggergruppen akzeptieren.