TEMPLATE_INSTANTIATION_DATA 構造体

C++ Build Insights SDK は、Visual Studio 2017 以降と互換性があります。 これらのバージョンのドキュメントを表示するには、この記事の Visual Studio バージョン セレクター コントロールを Visual Studio 2017 以降に設定します。 このページの目次の一番上にあります。

TEMPLATE_INSTANTIATION_DATA 構造体はテンプレートのインスタンス化を表します。

構文

typedef struct TEMPLATE_INSTANTIATION_DATA_TAG
{
    unsigned long long  SpecializationSymbolKey;
    unsigned long long  PrimaryTemplateSymbolKey;
    int                 KindCode;

} TEMPLATE_INSTANTIATION_DATA;

メンバー

名前 [説明]
SpecializationSymbolKey テンプレート特殊化の種類を表すキー。 この値は分析対象のトレース内で一意です。
PrimaryTemplateSymbolKey 特殊化されたプライマリ テンプレートの種類を表すキー。 この値は分析対象のトレース内で一意です。
KindCode テンプレート インスタンス化の種類。 詳細については、TEMPLATE_INSTANTIATION_KIND_CODE に関するページを参照してください。

注釈

TEMPLATE_INSTANTIATION_DATA 構造体内のキーは分析対象のトレース内で一意です。 ただし、異なるコンパイラ フロントエンド パスから受け取る 2 つの異なるキーで、2 つの同じ型が示されている場合があります。 複数のコンパイラ フロントエンド パスからの TEMPLATE_INSTANTIATION_DATA 情報を使用するとき、SYMBOL_NAME イベントを使用し、2 つの型が同じかどうかを判断します。 SymbolName イベントは、すべてのテンプレートのインスタンス化が行われた後で、コンパイラ フロントエンド パスの最後に生成されます。