你可以使用
std::get
直接的,但是你得到的比简单地包装你所做的事情更冗长:
using my_container = bmi::multi_index_container<
my_tuple_t,
bmi::indexed_by<
bmi::ordered_unique<
bmi::tag<struct first>,
bmi::global_fun<const my_tuple_t&, const int&, &std::get<0, int, double>>
>
>
>;
问题是
性病::得到
不是函数而是函数模板的重载集,并且
global_fun
需要一个具体的函数指针,因此需要实例化
性病::得到
所有的模板参数都显式地写下来了。例如,检查
cppreference.com
有关模板参数的说明。