MakeStaticAnalyzerGroup
O SDK do C++ Build Insights é compatível com o Visual Studio 2017 e posterior. Para ver a documentação dessas versões, defina o controle seletor de Versão do Visual Studio deste artigo para o Visual Studio 2017 ou posterior. Ele é encontrado na parte superior da tabela de conteúdo nesta página.
A função MakeStaticAnalyzerGroup
cria um grupo de analisadores estáticos que você pode passar para funções como Analyze
ou Relog
. Os membros de um grupo de analisadores recebem eventos um a um, da esquerda para a direita, até que todos os eventos em um rastreamento sejam analisados.
Sintaxe
template <typename... TAnalyzerPtrs>
auto MakeStaticAnalyzerGroup(TAnalyzerPtrs... analyzers);
Parâmetros
TAnalyzerPtrs
Esse parâmetro é sempre deduzido.
analyzers
Um pacote de parâmetros de ponteiros IAnalyzer
incluído no grupo de analisadores estáticos. Esses ponteiros podem ser brutos, std::unique_ptr
ou std::shared_ptr
.
Valor de retorno
Um grupo de analisadores estáticos. Use a palavra-chave auto
para capturar o valor retornado.
Comentários
Ao contrário dos grupos de analisadores dinâmicos, os membros de um grupo de analisadores estáticos precisam ser conhecidos em tempo de compilação. Além disso, um grupo de analisadores estáticos contém ponteiros IAnalyzer
que não têm comportamento polimórfico. Quando um grupo de analisadores estáticos analisa um rastreamento Rastreamento de Eventos para Windows (ETW), as chamadas para a interface IAnalyzer
sempre são resolvidas para o objeto diretamente apontado pelo membro do grupo de analisadores. Essa perda de flexibilidade possibilita o processamento mais rápido de eventos.
Se os membros de um grupo de analisadores não puderem ser conhecidos no momento da compilação ou se você precisar de comportamento polimórfico em seus ponteiros IAnalyzer
, considere usar um grupo de snalisadores dinâmicos. Para usar um grupo de analisadores dinâmicos, chame MakeDynamicAnalyzerGroup
.