我正在尝试为我的Bound
模板包装器实现一个实例化器函数,但我无法让它工作。我需要这个来说服工作人员我们应该从 Ada 切换到 D。
我想要这个模板
/** Bounded Value of Type T. */
struct Bound(T,
T min = T.min,
T max = T.max,
bool Exceptional = true) {
...
}
被实例化为
auto x = bound!(0.0, 10.0)(1.0);
那就是我希望第一个模板参数T
由模板参数的值min
和max
. 但是如何指定具有默认值的模板参数呢?
当然我总是可以
auto bound(float min, float max, bool Exceptional = true)(float value) {
return Bound!(float, min, max, Exceptional)(value);
}
但是如何制作bound
模板?