Also sagen, dass ich einige constexpr
Funktoren machen möchte, obwohl ich dies mit bind
tun könnte. Gibt es etwas, das mir fehlt? Warum kann bind
keine constexpr
zurückgeben?Warum kann ich keine Bindung constexpr?
Gegeben:
struct foo {
int b() const { return _b; }
int a() const { return _a; }
int r() const { return _r; }
const int _b;
const int _a;
const int _r;
};
Ich möchte:
constexpr auto sumB = bind(plus<int>(), placeholders::_1, bind(&foo::b, placeholders::_2));
constexpr auto sumA = bind(plus<int>(), placeholders::_1, bind(&foo::a, placeholders::_2));
constexpr auto sumR = bind(plus<int>(), placeholders::_1, bind(&foo::r, placeholders::_2));
Gibt es etwas, das ich diese Arbeit zu machen tun könnte?
Die Frage ist wohl jetzt „warum nicht“, sondern „warum doesn "t". Es könnte wahrscheinlich, aber es tut es nicht. –
@NathanOliver Ich denke das würde eine gute Antwort geben. Würde es dir etwas ausmachen, zu posten? –