Код: Выделить всё
template
concept CanFoo = requires(Eigen::Array2d const& x) {
{ T::Foo(x) } -> std::same_as;
};
Код: Выделить всё
template
requires CanFoo
class Host_t {
T_Bar bar_;
};
Код: Выделить всё
class RedActor {
public:
static double Foo(Eigen::Array3d const& x) { return x.mean(); }
};
// Example application
TEST(YYY, XXX) {
Host_t blah;
}
Однако это не так... как новичок в концепциях шаблонов, это противоречит моим наименее неожиданным ожиданиям. Почему это компилируется?
Подробнее здесь: https://stackoverflow.com/questions/798 ... not-strict
Мобильная версия