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.