Шаблон C++: как установить нетиповые ограничения во время компиляции

Предположим, у меня есть следующий шаблон

template<unsigned char I, unsigned char F>
class FOO
{
   ....
}

На самом деле, я требую (I >= F). Если кто-то неправильно использует

FOO<1, 2> a;

, я надеюсь вызвать ошибку компиляции. Как это сделать?

Спасибо

5
задан Yan Zhu 3 March 2012 в 07:31
поделиться