#include <iostream>
template<int B1, int B2>
struct MyClass
{
static constexpr double d1 = (double)B1;
static constexpr double d2 = (double)B2;
static constexpr double B = (B2 == 0) ? 0.0 : d1/d2;
// ...
};
int main()
{
const int n = MyClass<22, 5>::B;
double b = MyClass<n, -1>::B;
std::cout << b << '\n';
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdGVtcGxhdGU8aW50IEIxLCBpbnQgQjI+CnN0cnVjdCBNeUNsYXNzCnsKICAgIHN0YXRpYyBjb25zdGV4cHIgZG91YmxlIGQxID0gKGRvdWJsZSlCMTsKICAgIHN0YXRpYyBjb25zdGV4cHIgZG91YmxlIGQyID0gKGRvdWJsZSlCMjsKICAgIHN0YXRpYyBjb25zdGV4cHIgZG91YmxlIEIgPSAoQjIgPT0gMCkgPyAwLjAgOiBkMS9kMjsKICAgIC8vIC4uLgp9OwoKaW50IG1haW4oKQp7Cgljb25zdCBpbnQgbiA9IE15Q2xhc3M8MjIsIDU+OjpCOwoJZG91YmxlIGIgPSBNeUNsYXNzPG4sIC0xPjo6QjsKCXN0ZDo6Y291dCA8PCBiIDw8ICdcbic7Cn0=