.cpp
別のファイルでクラス テンプレートの可変メンバ関数テンプレートをインスタンス化するにはどうすればよいですか? 上記のクラス テンプレートが一連のファイル内にあるとします。a.hpp
インターフェイスの定義、a_impl.hpp
実装、およびa.cpp
インスタンス化を使用して、チェーン内の前の各前のものを順番に含めますが、最初のものだけがクラスのユーザーに表示されます (開発者)。
空のパラメーター パックの場合に特に関心があります。
.cpp
別のファイルでクラス テンプレートの可変メンバ関数テンプレートをインスタンス化するにはどうすればよいですか? 上記のクラス テンプレートが一連のファイル内にあるとします。a.hpp
インターフェイスの定義、a_impl.hpp
実装、およびa.cpp
インスタンス化を使用して、チェーン内の前の各前のものを順番に含めますが、最初のものだけがクラスのユーザーに表示されます (開発者)。
空のパラメーター パックの場合に特に関心があります。
template <class A>
struct AA
{
template<class Z, class... Q>
void aa(double, Q... q) {};
};
template void AA<int>::aa<char>(double);
template void AA<int>::aa<char, char*>(double, char*);
template void AA<int>::aa<char, char*, char**>(double, char*, char**);
セットアップでは、「開発者」のみがインスタンス化できることに注意してください (インスタンス化できるようにするには、実装を確認する必要があります)。