如何实现这样的模版类?
template<bool bEnableLog>
class A
{
func()
{
1.这里是func的实现代码;
2.如果bEnableLog为true,那么这里是输出日志的代码,否则这里没有任何代码
}
}
当然可以用特化来实现
template<bool bEnableLog> class A;
template< true >
class A
{
func()
{
1.这里是func的实现代码;
2.这里是输出日志的代码
}
};
template< false >
class A
{
func()
{
1.这里是func的实现代码;
2.这里没有任何代码
}
};
但是特化造成的问题是,func的实现代码写了两遍,我不想这样,该如何实现?