1
私は、TraceLoggingWriteマクロを完全にラップするC++ラッパー関数を考え出したいと思います。 TraceLoggingWrite
は、可変パラメータを持つマクロです。次のコードスニペットを試みましたが、va_listパラメータを受け入れるためにラップされた関数が構文を必要とするように見えるため、コンパイルエラーが発生します。もしそうなら、これを達成する別の方法がありますか?可変パラメータを持つマクロに対してC++ラッパー関数を定義することはできますか?
void WrapperFunction(String Name, ...)
{
va_list args;
va_start(args, Name);
TraceLoggingWrite(gProvider,
Name,
TraceLoggingInt32(32, "Test"),
args);
va_end(args);
}
転送参照を 'std :: forward'で使用することもできます。 – Jarod42