4


0

最大2つの引数を与えるC ++テンプレートを書く方法は?

両方の引数は整数であることが保証されています。

次のようにmyMaxを記述する方法

myMax<1, 2>; // 2
myMax<3, 2>; // 3  ?

これを実行時ではなくコンパイル時に評価したい。 (その後、これをtypelistでsizeofとともに使用して、バリアントにスペースを割り当てる必要があります。)

ありがとうございます。

1 Answer


7


template
struct myMax
{
    static const int value = (x > y) ? x : y;
};
サイズのみで使用する場合は、 int`の代わりに std

size_t`を使用できます。