3
我有以下的重載函數:別名一個const的返回類型重載函數
template<size_t N, typename T>
auto get(const T & _t) -> decltype(std::get<...>(_t)) {
...
}
template<size_t N, typename T>
auto get(T & _t) -> decltype(std::get<...>(_t)) {
...
}
首先的問題是:
不第一個使用std::get(const tuple<_Elements...>& __t)
,第二個std::get(tuple<_Elements...>& __t)
??
現在我想我的別名新的函數get
的返回類型:
using type = typename decltype(aux::get<I>(data))::type;
其中一個用在這裏?常量還是不是?和我如何選擇?我想同時別名! data
是非const
'data'是非const的,我怎麼能得到const的類型:'類型名decltype(AUX ::得到(...)):: type'時參數是const,我不想添加新變量 –
@OthmanBenchekroun已添加到答案 – Angew