Allowed people to buy drugs online
Allowed people to buy drugs online
I’m not sure if there’s anything enable_if
can do that concepts can’t do somewhat better but yeah there’s definitely a lot of subtleties that reflection is going to make nicer or possible in the first place
You already can do that with C++20 concepts and the requires expression
template <typename T>
concept has_member_foo = requires(T t) {
t.foo();
};
// Will fail to instantiate (with nice error
// message) if t.foo() is ill-formed
template <has_member_foo T>
void bar(T t) {
// ...
}
// abbreviated form of above
void baz(has_member_foo auto t) {
// ...
}
// verbose form of above
template <typename T> requires
has_member_foo<T>
void biz(T t) {
// ...
}
// same as above but with anonymous concept
template <typename T> requires
requires(T t) { t.foo(); }
void bom(T t) {
// ...
}
// If already inside a function
if constexpr (has_member_foo<T>) {
// ...
}
// Same but with anonymous concept
if constexpr (requires(T t) { t.foo(); }) {
// ...
}
C++26 reflection is compiletime
beef…
I really don’t understand their examples. Like I get self-recognition and memory but what makes play behaviour, curiosity, anxiety-like states, and problem-solving signs of consciousness? These are at the end of the day organisms responding to stimuli, something all organisms by definition do. Is pain response a sign of consciousness but something like phototaxis isn’t only because the former is ‘complex’ and the latter ‘simple’?
this looks like writing in the large seal script