0
假设我正在编写一个函数模板GCD
,它同时使用了operator/
和operator%
。例如,对于某些类型,可以有效地计算复数或多项式(即,在划分多项式时可以得到余数“免费”)。所以我的一些类模板实现了divmod
,它返回一对商和余数。如何确定C++模板是否指定了方法
但是,某些类和特别内置的类型(如int
)没有divmod
(或等效)实现。如果我正要写一个使用divmod
的GCD
,我会歧视其他类型(反之亦然)。我一直没有想出一个模板专门化,它不需要重复GCD
的大部分代码。
我在这里有什么选择?
谢谢,我想你的答案和http://www.ddj.com/cpp/184404270#l4会让我走! – user103892 2009-05-09 00:03:51
好的,实际上http://www.kuro5hin.org/?op=displaystory&sid=2001/3/1/72020/17594做到了这一招 – user103892 2009-05-09 01:13:11