должен ли std::result_of работать с результатом std::mem_fn? судя по тому что читал в стандарте — да (может, конечно, не понял чего), но почему-то не работает с msvc 2010...
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Здравствуйте, niXman, Вы писали:
X>Здравствуйте, andyp, Вы писали:
A>>должен ли std::result_of работать с результатом std::mem_fn? судя по тому что читал в стандарте — да (может, конечно, не понял чего), но почему-то не работает с msvc 2010...
X>должен.
X>покажи в коде, что не работает.
да вот например
struct test_class
{
int inc_by_1(int x) {return x + 1;}
};
template <typename typename Ftn>
struct test_functor
{
typedef typename std::result_of<Ftn>::type value_type;
value_type operator()(test_class& t, int i) const
{
return _f(test,i);
}
private:
Ftn _f;
};
void test_func()
{
test_class test;
test_functor<decltype(std::mem_fn(test_class::inc_by_1))> f;
f(test,1);
}
про то, почему не работает нашел
здесь