timização do código do modelo para valores específicos de parâmetros que não são do tip
template <bool flag>
class foo
{
public:
int bar()
{
if(flag)
{
// stuff
}
}
};
Quando o compilador compila essa classe, ele substitui o parâmetro flag por true ou false. Então nós temos se (verdadeiro) (ou se (falso)). Em seguida, a cláusula if verifica uma expressão constante e SERÁ REMOVIDA em tempo de compilação. Posso esperar que os compiladores se comportem assim?